e107 Bootstrap CMS (Content Management System) v2 with PHP, MySQL, HTML5, jQuery and Twitter Bootstrap

Overview

e107 Content Management System

GitHub release GitHub Workflow Code coverage Join the chat at https://gitter.im/e107inc/e107 Download e107

e107 is a free and open-source content management system (CMS) which allows you to manage and publish your content online with ease. Developers can save time in building websites and powerful online applications. Users can avoid programming completely! Blogs, websites, intranets – e107 does it all.

Table of Contents

Requirements

Minimum

  • A web server (Apache or Microsoft IIS) running PHP 5.6 or newer
  • MySQL 4.x or newer, or MariaDB
  • FTP access to your web server and an FTP client (such as FileZilla)
  • Username and password to your MySQL database

Recommended

  • Apache 2.4 or newer on Linux
  • PHP 7.4 or newer
  • MySQL 5.6 or newer, or MariaDB 10.3 or newer
  • A registered domain name
  • Access to a server control panel (such as cPanel)

Installation

Standard Installation

  1. Download e107.
  2. Unzip/Extract the compressed file onto your desired web root. This is often a folder called public_html.
  3. Point your browser to the install.php script (e.g., https://example.com/subfolder/install.php)
  4. Follow the installation wizard in your browser.

Git Installation (developer version)

  1. Run the following commands, replacing '~' with your document root (the parent of public_html) and xxx:xxx is the intended owner of your e107 files.
    cd ~
    git clone https://github.com/e107inc/e107.git public_html	
    chown -R xxx:xxx public_html 
    
  2. Point your browser to the install.php script (e.g., https://example.com/subfolder/install.php)
  3. Follow the installation wizard in your browser.

Reporting Bugs

Be sure you are using the most recent version of e107 prior to reporting an issue. You may report any bugs and make feature requests e107's GitHub Issues page.

Contributing to Development

  • Please submit 1 pull request for each GitHub issue you work on.
  • Make sure that only the lines you have changed actually show up in a file-comparison (diff). Some text editors alter every line; this should be avoided.
  • It is recommended to configure git pull to rebase on the master branch by default to avoid unnecessary merge commits. You can set this up in your copy of the repo's .git/config file like so:
    [branch "master"]
      rebase = true
    
  • See the CONTRIBUTING document for a tutorial on getting started.

Donations

If you like e107 and wish to help it to improve, please consider making a small donation.

  • PayPal: donate (at) e107.org

Support

License

e107 is released under the terms and conditions of the GNU General Public License (http://www.gnu.org/licenses/gpl.txt)

Comments
  • News posting

    News posting "unauthorized access"

    Trying to post a news item but getting a blank white page which simply says "unauthorized access". Works fine on WAMP server but not on live site. I am setup as main admin so can't be permissions? Also another admin with correct permission having same issue.

    Any ideas?

    status: awaiting feedback 
    opened by pricey1981 62
  • latest GIT .. lots of bugs

    latest GIT .. lots of bugs

    using the git version of this morning i updated 2 sites..

    one site was running the old v1 e107 .. that got stuck in upgrade process one site was already updated to v2, just copied the new git files. ** this comment is edited on each find

    upgrade v1 site (site 1)

    • keeps yelling my fb_like plugin isnt compatible (my own fork, it should be ok.. runs without notice or errors on other v2 site.. ). hitting disable plugin does noting but refresh the page.

    ** found out: it was showing an older version number in the pluginmanager the updated fb_like plugin needed to be updated in the plugin manager, got that sorted now.

    • ERROR on download tables during conversion to v2 (showed only once)
    • stuck in the upgrade process, UPGRADE_01 (system log shows: Update from 1.0 to 2.0 executed Start version: 2.0.0 (git) ) running debug shows Update required in update_routines.php on line 1509 (Import 159 Download File(s) and 0 Public File(s) into Media Manager)
    • some menu's not showing (while showing ok in menu manager)

    ** manually changed database, cleared cache,and cookies removed and reinstalled plugins. menus are showing now .

    • old media not found/ known to new system

      ** chmodding media folder worked here, media now has both avatars and newspost images

    • seo urls empty. probablty due to not finishing upgrade to v2?

    • contact page, user pages empty. ** removing obsolete folder /e107_themes/templates fixed this.

    (site 2) same git version on already updated v2 site: (which was running ok on yesterdays code ... )

    • cant open several admin functions, (f.i. system log, plugin manager and more refirects to index page directly) **fixed by changing from session type login to cookies
    • media no longer showing when using SEF urls
    • performance .. very slow. ** banlist?

    The version from yesterday was a lot more stable and didnt have all these errors.. please revert.

    type: bug topic: upgrade process 1.x to 2.x status: awaiting feedback 
    opened by willem010 55
  • Feature request: (Form API) textfield that uses autocomplete

    Feature request: (Form API) textfield that uses autocomplete

    I think, it would be great if e107 core would support an "autocomplete" option for textfield in Form API.

    This Bootstrap 2/3 plugin looks promising: https://github.com/timschlechter/bootstrap-tagsinput Examples: http://timschlechter.github.io/bootstrap-tagsinput/examples

    And... for example if an "autocomplete_path" is set in the options array of text(), e107 would attach the "bootstrap-tagsinput" library to the page, and generate an inline javascript code for the generated input field...

    Set an autocomplete path for the textfield:

    $frm = e107::getForm();
    
    $frm->text('my-autocomplete-field', 'current_value', 100, array(
        'size' => 'large',
        'autocomplete_path' => e107::url('plugin', 'autocomplete', $data),
    ));
    

    And a javascript for the textfield:

    jQuery('input#my-autocomplete-field').tagsinput({
      typeahead: {                  
        source: function(query) {
          return jQuery.get('autocomplete_path......');
        }
      }
    });
    
    type: enhancement 
    opened by lonalore 47
  • Unable to install plugins or themes via admin web interface....

    Unable to install plugins or themes via admin web interface....

    I'm having a "Can't continue" error when i try to install plugins or themes via the web interface on the admin area.... Any ideas what might be causing it???

    type: bug status: testing required 
    opened by rica-carv 45
  • Cannot modify users information

    Cannot modify users information

    A couple strange things with this one: image

    The good old LAN_??? which means some language file mapping is not present?

    When trying to update a persons email address etc the following occurs:

    image

    Almost like it is trying to do an insert instead of database update.

    Thanks -D-

    type: bug 
    opened by dimante 45
  • PM plugin, show nothing

    PM plugin, show nothing

    I installed the PM plugin, and when I click on the button send new message, to create a new one, nothing is shown sealed with the plugin, on the screen. I am not using any template, only those that incorporates the own plugin.

    type: bug 
    opened by chory 37
  • (?) icons in admin area not working?

    (?) icons in admin area not working?

    The help icons in the admin area are suppossed to do anything?

    imagem

    Currently, in Firefox Developer Edition, they're displayed, but there's nothing more done. No help displayed, nothing.... On previous version the icons weren't there, but help was displayed in the forms input boxes...

    type: bug 
    opened by rica-carv 36
  • Error Message: what happened to db_debug??!!

    Error Message: what happened to db_debug??!!

    When testing the upgrade of a v1.0.3 (from SVN) to the latest git clone, after copying the V2 files over the V1 files, every page I try gives this error: what happened to db_debug??!!

    I also saw this message flash by on a freshly installed V2 variant of the site (so with a clean database), however, I was able to get past that message and use the site without problem. The upgrade site only shows the above message.

    type: bug 
    opened by brhahlen 36
  • PHP 7.1.1 issues (test needed)

    PHP 7.1.1 issues (test needed)

    The following issues are reported by a user on e107hungary forum, I'm just forwarding them:

    1. Cannot be change headlines on news items ~~(I requested more info for this, waiting for response)~~ EDIT: Inline-editing on the admin news page is not working under PHP 7.1.1. It jumps to top of the page when clicking on the news title.

    2. Wrong/missing plugin names because e107 cannot find language files (I think we should use english files as fallback, if no language files available for the selected language)

    3. Cannot select sub-forum in the forum:

    Provided screenshot for issue 3. xampp-hiba1

    type: bug 
    opened by lonalore 35
  • Tinymce/bbcode

    Tinymce/bbcode

    USING news create OR Page (files age : latest 5 hours ago) 2-6 INPUT AREA (window : body)

    Upgrade of v1 to v2 : succeeded with 1 solvable issue : new issue made/making> forum related issue =upgrade )

    Creating news and/or pages

    (as installed = tinymce4 Upgraded site trying to add youtube etc. When selecting youtube it opens media manager news : youtube (2 movies); not selectable Adding an image : media m.. displayed : not selectable

    adding youtube embedding code ( i frame ) works, txt works. Trying to use any image or related > not selectable

    Here are some error reports Tijdstempel: 2-6-2014 14:44:05 Fout: TypeError: $(...).tooltip is not a function Bronbestand: http://domain/e107_web/js/core/admin.jquery.js?1401712003 Regel: 76 = $(this).tooltip({opacity:1.0,fade:true, placement: pos});

    When creating news selecting an image at bottom (first block) it opens mediamanager.Selecting an image shown. marks it, but does NOT close the dialog : no file selection (closing window)

    Tijdstempel: 2-6-2014 14:52:14 Fout: TypeError: parent.document.getElementById(...) is null Bronbestand: http://domain/e107_admin/image.php?mode=main&action=dialog&for=news&tagid=news-thumbnail-0&iframe=1&video=1 Regel: 1

    Tijdstempel: 2-6-2014 14:56:25 Fout: TypeError: e is undefined Bronbestand: http://tinymce.cachefly.net/4.0/tinymce.min.js?1401712003 Regel: 9

    Tijdstempel: 2-6-2014 15:02:11 Fout: TypeError: $(...).draggable is not a function Bronbestand: http://domain/e107_web/js/core/admin.jquery.js?1401712003 Regel: 82

    Uninstalled Tinymce4 Installed Tinymce

    In BOTH cases i have NO possibilties to add media related Preferences adjusting (disabling wysiwig) does NOT change display of window or makes changes to method for input

    Tijdstempel: 2-6-2014 15:04:47 Fout: TypeError: tinymce is null Bronbestand: http://domain/e107_plugins/tinymce/tiny_mce_popup.js?1401712003 Regel: 5

    basically i can not create a page or news post WITH media

    type: bug status: duplicate 
    opened by tgtje 35
  • Spam Bug Report

    Spam Bug Report

    My site has been getting hit with chinese spambots. Catchphas are enabled. SFS is installed but bots are able to post on any thread that is 'viewable' by the public. All my threads have post permissions restricted to members only but if the thread is set to viewable by the public then these bots are able to post without an account.

    Ive now set my forum so only members can view which seems to of stopped it but obviously this isn't ideal.

    Running latest github files. Not sure what other info you need?

    type: bug status: testing required status: awaiting feedback 
    opened by utopiate 34
  • {TRACK} behavior

    {TRACK} behavior

    Bug Description

    On forum viewtopic page click on email track button. When ajax request was done, information message was displayed. Click the button again, you've got a duplicate message from the server.

    The problem found in forum.js.

    The POST request payload when click the button:

    thread: 4836
    action: track
    post: 6
    text: 
    insert: forum-track-button
    e_token: aaae16a6fc2a59e95f5d4ade51086106
    

    When request was done, the JS applying existing behavior on the parent element (forum-track-button) not the new content that replaces content from 'glyph...bell-o' to 'glyph....bell' inside parent element.

    Code from forum.js line 100:

    if(action == 'track')
    {
    	if(d.html != false)
    	{
    		$('#' + insert).html(d.html);
    		// Attach all registered behaviors to the new content.
    		e107.attachBehaviors();
    	}
    }
    

    I deleted line e107.attachBehaviors(); and the problem solved.

    type: bug 
    opened by Maszatomy 0
  • Gallery slideshow not work

    Gallery slideshow not work

    I use this menu and call it directly to theme: {MENU: path=gallery/slideshow} The images appears but I can't change the categories in admin area. (only one categories images appears) I think the menu or shortcode wrong. Thanks help!

    type: bug 
    opened by fizi 9
  • {GLYPH} + bootstrap5 and icon size

    {GLYPH} + bootstrap5 and icon size

    Bug Description

    Some icons have different sizes

    This is code from cookbook plugin

        <ul class="fa-ul">
            <li>{GLYPH: type=fa-cutlery&class=fa-li} {COOKBOOK_CATEGORY_NAME: type=link}</li>
            <li>{GLYPH: type=fa-users&class=fa-li} {COOKBOOK_RECIPE_PERSONS}</li>
            <li>{GLYPH: type=fa-clock-o&class=fa-li} {COOKBOOK_RECIPE_TIME}</li>
            <li>{GLYPH: type=fa-tags&class=fa-li} {COOKBOOK_RECIPE_KEYWORDS}</li>
            <li>{GLYPH: type=fa-trophy&class=fa-li} {COOKBOOK_RECIPE_AUTHORRATING: type=stars}</li>
            <li>{GLYPH: type=fa-toolbox&class=fa-li} {COOKBOOK_RECIPE_DIFFICULTY: type=stars}</li>
            <li>{GLYPH: type=fa-user&class=fa-li} {COOKBOOK_RECIPE_AUTHOR}</li>
            <li>{GLYPH: type=fa-calendar-alt&class=fa-li} {COOKBOOK_RECIPE_DATE}</li>
        </ul>
    

    But result is image

    and the reason is core CSS - e107.css

    /* FontAwesome Shims */
    .svg-inline--fa.fa-w-16         { width:1em }
    

    After deleting, it looks correct: image

    you shouldn't change in core so general class or there are others too

    class="svg-inline--fa fa-utensils fa-w-13 fa-li"
    class="svg-inline--fa fa-users fa-w-20 fa-li"
    class="svg-inline--fa fa-clock fa-w-16 fa-li"
    class="svg-inline--fa fa-tags fa-w-20 fa-li"
    class="svg-inline--fa fa-trophy fa-w-18 fa-li"
    class="svg-inline--fa fa-toolbox fa-w-16 fa-li"
    class="svg-inline--fa fa-user fa-w-14 fa-li"
    

    @Moc Thanks

    type: bug 
    opened by Jimmi08 2
  • not able to generate sef url from title with national characters

    not able to generate sef url from title with national characters

    Bug Description

    This is string: "Ľudia okolo vás - na každom z nás záleží"

    In version 2,3,2 result is on live version: udia_okolo_vas_na_kazdom_z_nas_zalezi (first letter is missing) on localhost version ?_udia_okolo_vas_na_kazdom_z_nas_zalezi No error in console.
    No idea why there is difference.

    in version 2.3.3 (latest git) nothing is generated and console says: image I don't have clean installation (without plugins) so this could be caused with something else. but without national characters, sef generation is working

    Thanks

    type: bug 
    opened by Jimmi08 0
  • check if from in admin UI doesn't have negative value

    check if from in admin UI doesn't have negative value

    Motivation

    I noticed a lot of errors in admin logs of this type:

    SELECT SQL_CALC_FOUND_ROWS e107_hpslovnik.* FROM e107_hpslovnik ORDER BY id DESC LIMIT -10, 50

    It is caused by the negative "from" parameter in url ?from=-10

    After searching I found that there is only an integer test for from value: In raw mode:

    $rawData['limitFrom'] = $forceFrom === false ? (int) $request->getQuery('from', 0) : (int) $forceFrom;

    Normal way: $from = $forceFrom === false ? (int) $request->getQuery('from', 0) : (int) $forceFrom;

    In this case, I use the AdminUI handler in raw mode, but the behavior is the same.

    Proposed Solution

    Add check - minimal value for $from should be zero in any case.

    Thanks

    type: enhancement 
    opened by Jimmi08 4
Releases(v2.3.2)
  • v2.3.2(Apr 7, 2022)

    What's Changed

    • Handle previously unhandled exceptions with social plugin and Hybridauth by @Deltik in https://github.com/e107inc/e107/pull/4643
    • Bump twig/twig from 3.3.4 to 3.3.8 in /e107_tests by @dependabot in https://github.com/e107inc/e107/pull/4691
    • New API to concatenate an array of HTML attributes by @Deltik in https://github.com/e107inc/e107/pull/4688
    • fix for templating signature bbcodes by @Jimmi08 in https://github.com/e107inc/e107/pull/4709
    • use the same markup (bootstrap) for pagination in forum and topic by @Jimmi08 in https://github.com/e107inc/e107/pull/4714
    • Forum breadcrumbs on topic view with 3 forums #4286 by @Jimmi08 in https://github.com/e107inc/e107/pull/4710
    • fix for not clearing forum cache by @Jimmi08 in https://github.com/e107inc/e107/pull/4716
    • fix for access / check for access to forum type in forum post by @Jimmi08 in https://github.com/e107inc/e107/pull/4717
    • Fix for Forum permissions for creating topics by @Jimmi08 in https://github.com/e107inc/e107/pull/4718
    • Update theme.html by @brwnie in https://github.com/e107inc/e107/pull/4632
    • Fix for Recalculation forum replies in Tools by @Jimmi08 in https://github.com/e107inc/e107/pull/4721
    • #4724 forum - possibility to add forum ID as column by @Jimmi08 in https://github.com/e107inc/e107/pull/4729
    • #4715 correct display of Last Post info by @Jimmi08 in https://github.com/e107inc/e107/pull/4723
    • #4659 forum main admin as silent moderator by @Jimmi08 in https://github.com/e107inc/e107/pull/4730
    • #4712 canonical URLs for paged forum topic by @Jimmi08 in https://github.com/e107inc/e107/pull/4733
    • #3470 login error message is loaded 2x by @Jimmi08 in https://github.com/e107inc/e107/pull/4734
    • #4670 ranks issue for first level by @Jimmi08 in https://github.com/e107inc/e107/pull/4735
    • #4708 load bbcode buttons only if HTML is allowed for user by @Jimmi08 in https://github.com/e107inc/e107/pull/4732
    • #4665 correct user last visit information by @Jimmi08 in https://github.com/e107inc/e107/pull/4741
    • #4245 stay on correct page after editing paginated topic by @Jimmi08 in https://github.com/e107inc/e107/pull/4742

    Full Changelog: https://github.com/e107inc/e107/compare/v2.3.1...v2.3.2

    Source code(tar.gz)
    Source code(zip)
  • v2.3.1(Dec 2, 2021)

    Highlights

    • Support for PHP 5.6 through PHP 8.1 (#4554) – e107 v2 now adds PHP 8.0 and 8.1 support while maintaining support for PHP 5.6.

    • New Admin Theme SkinsModern Light and Modern Dark. May now be selected during initial installation of e107.

    • Collapsible Navigation Panel – Option to reduce left-panel admin area navigation to icons only, for increased screen real-estate where it matters.

    • Database session handler performance improvement (#4575) – e107 v2.3.0 introduced a non-blocking session handler backed by the database; however, a missing index causes gradually slower performance the more rows there are in the session table. This release fixes that bug by adding the missing index through a database update (migration).

    • Thumbnail Generator rebuilt to use Intervention library.

    • WebP image support (#4270) – e107 can now serve WebP images to compatible browsers and convert existing images on-the-fly. Requires PHP 7.0+ with the GD WebP extension installed.

    • More reliable file uploads – A common complaint with e107 v2.3.0 was rejected file uploads. To fix this, e107 now recognizes files based on their MIME type.

    • Increased protection against cross-site scripting (XSS) – There is now improved layering of HTML tag rendering to reduce the likelihood of corrupting pages with bad HTML.

    • Increased protection against cross-site request forgery (CSRF) – Nonces have been added to some forms to prevent external sites from submitting them unbeknown to the authenticated user.

    • New theming features – Theme developers can now take advantage of Bootstrap 5 and customisable breadcrumbs.

    • SEO optimizations for Google, Facebook (Open Graph) and Twitter.

    • New "Hero" plugin for home page carousel management. Supports animated bullet points and buttons. (see e107.org home page for example)

    • News item Previous/Next navigation shortcode options.

    • jQuery updated to v3.6.0

    • FontAwesome updated to v5.14.0

    Source code(tar.gz)
    Source code(zip)
    core_image.phar(202.96 KB)
    e107_2.3.1_full.tar.gz(11.50 MB)
    e107_2.3.1_full.tar.xz(8.60 MB)
    e107_2.3.1_full.zip(12.55 MB)
    e107_v1.x_to_2.3.1_upgrade.tar.gz(11.52 MB)
    e107_v1.x_to_2.3.1_upgrade.tar.xz(8.62 MB)
    e107_v1.x_to_2.3.1_upgrade.zip(12.60 MB)
    e107_v2.x_to_2.3.1_upgrade.tar.gz(9.38 MB)
    e107_v2.x_to_2.3.1_upgrade.tar.xz(6.79 MB)
    e107_v2.x_to_2.3.1_upgrade.zip(10.14 MB)
  • v2.3.0(Dec 2, 2020)

    Highlights

    • 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)
    • Updated social login providers (#3492)
    • Basic per-item search engine robots handling added to News and Pages
    • Support for automated Git sync with a theme repo
    • Theme preferences import/export added to 'database' admin area.
    • New admin permission to grant access to the theme manager
    • Approve all comments has been added as an option.
    • Added Rich Textarea (WYSIYWG) for EUF (#1775)
    • 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)
    • forum plugin:
      • Added minimal validation when creating new forum
      • Added new 'Forum icon' field (#3733)
      • 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.
      • signup_shortcodes generates login buttons somewhat differently now.
      • 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)
    • ./e107_admin/message.php is now deprecated.
    • Removed download_mail pref (#3622)
    • Removed flood_protect pref (#3681)
    • "Update ./e107_core/bbcodes/bb_p.php" (#3988)
    • Admin-UI: Display ID number in create/update message
    • Allow semicolons in URL query string (#3943)
    • Allow <a rel> (#4128)
    • Default access to post_script changed from Main Admin to Nobody
    • Made mediapicker image selector the same width as Bootstrap input element.
    • Removed admin-only limitation on system directory downloads.
    • Removed bootstrap4 theme, which is now at https://github.com/e107inc/bootstrap4
    • Removed landingzero theme, which is now at https://github.com/e107inc/landingzero

    Fixed

    • PHP 7.3+ compatibility:
      • Escape hyphen in regex for PHP 7.3 compatibility (#4036)
      • e_model refactoring for compatible subclass method signatures (#2146)
      • {NEWSTITLE} shortcode issue (#4035)
      • A bunch of PHP 7.4 syntax errors (524229ba0b3061ae50b2d47ed4141f3e6ee1c1cc)
      • Fixed inconsistent output in PHP < 7.3 in e_parser::cleanHtml()
      • PHP 7.4.7+ fatal error involving core_index_index_controller (#4203)
      • Fixed all PHP syntax errors
    • A lot of PHP E_NOTICE issues (some of them documented in #4074)
    • MySQL 8.0.17+ support: INT types no longer return a width specification, so take that into consideration when verifying the database structure (#4216)
    • "Bad File Detected" when uppercase extension used on image. (#4017)
    • Fix for password filter in usersettings.php ("strong password not being hashed correctly") (#4004)
    • Multiple comment navigation issues (#2425, #2281, #2937)
    • Debug output removed from magic shortcode 'caption' (#3860)
    • Added missing shortcode for MENUAREA
    • {USER_EXTENDED} 'text_value' did not display the 'text' label correctly (#3957)
    • Legacy shortcode wrapper conflict with email template (#3726)
    • Banlist search by IP fails when using IPv4 (#4009)
    • Update user_comments when deleting comments from comment manager (#1706)
    • Automatic password rehashing added to admin login page.
    • Sudden logouts in admin area immediately after logging in (#1836)
    • Improved upgrade compatibility from e107 v1.x
    • Detect and refresh language file lists when scanning plugin directories.
    • Online language packs are not recognized in pre-release versions of e107 (#4229)
    • Relative times displayed incorrectly, like on the user profile (#4080)
    • User profile pager broken (#4146, #4252)
    • Wrong comment avatar displayed when user is logged in (#4217)
    • The email input field in usersettings.php is no longer required if the disable_emailcheck preference is truthy. (#4115)
    • Handle chatbox nicknames with a "." in them (#4162)
    • Quick add users does not save selected userclass permissions (#4095, #1728)
    • ./e107_admin/cpage.php: Added check to prevent saving page/menu with empty page_title and menu_name fields when editing (#1474, #3986)
    • Properly detect antiflood and online tracking prefs (#3681)
    • Admin-UI:
      • Manual plugin upload (#4259)
      • Admin-UI/Form Handler: Fix for auto-link generation failing in create/edit mode.
      • Get rid of autocomplete in the Admin-UI (#3131)
      • Admin-UI: Boolean values are rendered differently if inline editing is enable or not (#3058)
      • Improved body ID when Admin-UI is in use
      • Unchecking all the display columns options and saving now clears the user preference and restores the coded default value found in $fieldpref
      • User Column preferences were being ignored when using ajax filtering. (#4121)
      • Inline editing was not triggering events. (#4183)
      • email_item_class preference was not saving (#4220)
      • Anonymous posting - wrong user displayed in Comments Manager (#3971)
      • Settings>Search Incorrectly displays Config Option for Downloads when uninstalled (#2003)
    • Do not trigger user_login event if authentication fails (#4236)
    • Issue with plugins, menus disappearing or displaying as being uninstalled. (#3741)
    • Incorrect encoding of a plugin language file could cause json encoding to fail. (#3741)
    • Anonymous comments wouldn't show up (#3829)
    • Media-Manager Url fix. Fixed Media Preview. (#4049)
    • Fixed Multiselect dropdown so that an empty value also gets saved
    • Fixed <body> tag when using Menu Manager. Stored HTML-theme true/false var for each theme.
    • Avoid conflicts with earlier themes that may have a 'layouts' folder. (#3961)
    • Avoid legacy globals with v2.x theme templates. (#4124)
    • Themes that need to be purchased are now opened in a new window/tab instead of in an <iframe> to avoid same-origin restrictions (#4208)
    • Category template was changing news frontend template. Category template default should be blank. (#3739)
    • Error display in ./e107_admin/newspost.php
    • Nav styling small screens. (#4020)
    • 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)
    • unsubscribe.php and white page (no error) (#4178)
    • When invoking cron.php as an executable, the "Headers already sent" warning should no longer be emitted.
    • Schedule task was failing when multiple tab items were selected/saved.
    • Check for tablestyle() to avoid fatal error with some themes (#4012)
    • bootstrap3 theme:
      • corporate.css fix font path glyphicons (#3998)
      • Moved modal to footer
      • Admin checkboxes are not visible in "Display Columns" window (#4171)
    • bootstrap4 theme:
      • Alerts not showing (#3686)
      • Fix for btn-default in user update information button (#2898)
      • Formatting fixes for private messenger and usersettings
      • More formatting fixes (#4161)
    • Fix for Google and Microsoft advertising auto-tags
    • If the system or cache image directories' parents don't exist, mkdir() would fail to create the system or cache image directories.
    • Cached header JavaScript loaded in the wrong order (#4272)
    • Prevent HTML code injection in e107::url() (#4054)
    • Add missing Slovak letters to e_parse::toASCII() method (#4101)
    • Removed Image srcset conflicts. Improves rendering quality of fine-lined PNGs under some conditions. (#2981)
    • Mailout - display message when no email address sources are selected (#3303)
    • Remove hardcoded value for parameter order in render_newsgrid() (#4092)
    • Fixed Multiselect dropdown so that an empty value also gets saved.
    • Clarify FPW testing mode button (#4007)
    • Error page ignoring error_template changes (#4137)
    • Fix for correct button class on core signup template (#2160)
    • Signup template correct implementation of GDPR shortcode (#4055)
    • Extended-User type=radio value conversion fix (#4144)
    • Check theme version is compatible and disable installation if necessary (#4200)
    • SQL insert error when creating news and pages while not restricting robots (#4207)
    • Backups of MySQL databases on connections that use a port other than 3306 (#4225)
    • alt_auth plugin:
      • Using e107 as secondary authorisation causes blank page (#3983)
      • Fix for fatal error because not supported MySQL function (#3981)
      • Stop using outdated db_* methods (#3993)
      • Fix for wrong user data while creating user (#3982)
      • Fix for missing scenario with secondary source (#3984)
    • download plugin:
      • Download icons fix (#3865)
      • Reported links goto non SEF urls (#3622)
      • Allow class styling to download next/prev shortcodes (#3864)
      • Download RSS feed upgraded to v2 standards
      • Download meta description limit and formatting (#3270)
      • Multiple bugs in the report broken download feature (#2576, #3622)
    • faq plugin:
      • FAQ classic layout broken (#2822)
    • featurebox plugin:
      • Update Featurebox RSS feed to v2 standards
      • Fix for correct category names (#3868)
    • forum plugin:
      • Fix admin dashboard link to reported forum posts
      • Forum e_frontpage - allow selection of a specfic forum as frontpage
      • Tweak forum JS with poll plugin (#647)
      • Forum RSS updated to v2 standards. (#3767)
      • Fix LAN when error occurred when deleting a forum post
      • Forum icons extra check added for consistency (#3948)
      • Fix forum notify checkbox functionality (#1343)
      • Forum email notification option was removed during forum upgrade (v1 to v2) (#176)
      • Check for $rankInfo to prevent unwanted HTML output (#3827)
    • gallery plugin:
      • Gallery custom caption fix. (#2816)
      • Strip any HTML from Gallery breadcrumb (#2979)
    • gsitemap plugin:
      • gsitemap manual entry now working (#3866)
    • import plugin:
      • HTML import, check for PHP Tidy extension (#4027)
    • linkwords plugin:
      • Upgraded linkwords admin area to v2.x specifications.
    • login_menu plugin:
      • Hide login_menu when user registration AND login are disabled (#3527)
    • news plugin:
      • Fix for news sitelink when alias in use.
      • Show message on news items when comments disabled while global comments are enabled (#3680)
      • Correct message when no news items are found on specific day (#2694)
      • News archive button template added. (#3862)
      • Incorrect RSS URLs on news (#4172)
      • {ACTIVE} shortcode typo (#4206)
    • pm plugin:
      • PM menu title setting is now respected (#3925)
    • social plugin:
      • Reworked for Hybridauth upgrade (#3492, #4099)
      • Removed Google+ share button
      • Add Twitch and VK to Social Pages (#4167)
    • user plugin:
      • Created user/e_search addon and upgraded to v2 specs

    For Developers

    Added

    • e_db is the new interface for database abstraction. It is implemented by e_db_pdo (PDO-based) with a fallback of e_db_mysql (mysqli-based).
    • Automated tests have been introduced. (#4038)
    • 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
    • Bootstrap 3 shims into Bootstrap 4 (#2970)
    • Added support for dynamic header/footer templates controlled by the theme_shortcodes class. (#3932)
    • Added class parameter to shortcodes for pager ({USER_JUMP_LINK}) (#4001)
    • A shortcode which allows you to display the userclass icon: {USER_USERCLASS_ICON} (#2225)
    • Lazy loading of images in {NEWS_IMAGE} shortcode can be invoked with {NEWS_IMAGE: loading=lazy}
    • Cross-platform strptime() replacement: e_shims::strptime() (#4077)
    • e_parser:
      • Added d (digits) flag to parser filter.
      • e_parser::toAvatar():
        • 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)
    • Removed the need for the BODYTAG constant (#2308)
    • 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)
    • e_db_pdo::copyRow() - Greatly decrease collision chance
    • sitecontactinfo and contact form have the same style ID (#3684)
    • parms doesn't work with new Admin UI with datestamp field (#3759)
    • Trigger admin_user_delete was not firing (#3969)
    • array_diff_recursive() type check for recursion
    • 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)
      • Removed duplicated type=hidden elements. (#3461)
      • Avoid an unexpected dropdown result if writeParms['optArray'] is defined but empty.
      • Fatal error with boolean after using batch option (#3936)
      • Check-all checkbox class conflict (#4166)
      • Custom field problem with single quote value (#4165)
    • Corrected multiple event includes conflict (#4079)
    • Prevent e-modal conflict with other modals. (also supports data-modal-target attribute)
    • Fix for faulty srcset height value when using overrides and a default.
    • Bootstrap 4 e_parser::toBadge() fix.
    • placeholder attribute wasn't working on datepicker input.
    • Fix for e_form::name2id() when = and ? characters are detected is found.
    • Improved URL matching for layout detection. Closest match will always be used.
    • Consistency for news items check in months_menu and blogcalender_menu (#2694)
    • Exclude e107.css doesn't work (#4153)
    • Database verification was failing when field name ended in a digit (#4155)
    • Moved a hard-coded LAN in e107_handlers/media_class.php (#4043)
    • Antivirus complaint in e_fileTest (#4248)
    • Table alias detection failure when using more than 1 alias character
    • Cached table definition is different from real table (#4268)
    • Missing tablerender ID for COPPA fail (#4254)
    • Inaccurate "include" path debug message (#4262)
    • Removed unused (commented out) strings (#4266)
    • Plugin Builder:
      • Field type detection fix (#4257)
      • Improved handling of decimal fields
      • Added a 'readonly' checkbox to table field options.
    Source code(tar.gz)
    Source code(zip)
    e107_2.3.0_full.tar.gz(10.83 MB)
    e107_2.3.0_full.tar.xz(8.09 MB)
    e107_2.3.0_full.zip(11.82 MB)
    e107_v1.x_to_2.3.0_upgrade.tar.gz(10.86 MB)
    e107_v1.x_to_2.3.0_upgrade.tar.xz(8.11 MB)
    e107_v1.x_to_2.3.0_upgrade.zip(11.87 MB)
    e107_v2.x_to_2.3.0_upgrade.tar.gz(8.19 MB)
    e107_v2.x_to_2.3.0_upgrade.tar.xz(5.81 MB)
    e107_v2.x_to_2.3.0_upgrade.zip(8.84 MB)
  • v2.3.0-rc1(Jul 8, 2020)

    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)
    • Updated social login providers (#3492)
    • Basic per-item search engine robots handling added to News and Pages
    • Support for automated Git sync with a theme repo
    • Theme preferences import/export added to 'database' admin area.
    • New admin permission to grant access to the theme manager
    • Approve all comments has been added as an option.
    • Added Rich Textarea (WYSIYWG) for EUF (#1775)
    • 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)
    • forum plugin:
      • Added minimal validation when creating new forum
      • Added new 'Forum icon' field (#3733)
      • 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.
      • signup_shortcodes generates login buttons somewhat differently now.
      • 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)
    • ./e107_admin/message.php is now deprecated.
    • Removed download_mail pref (#3622)
    • "Update ./e107_core/bbcodes/bb_p.php" (#3988)
    • Allow semicolons in URL query string (#3943)
    • Allow <a rel> (#4128)
    • Default access to post_script changed from Main Admin to Nobody
    • Made mediapicker image selector the same width as Bootstrap input element.
    • Removed admin-only limitation on system directory downloads.
    • Removed bootstrap4 theme, which is now at https://github.com/e107inc/bootstrap4
    • Removed landingzero theme, which is now at https://github.com/e107inc/landingzero

    Fixed

    • PHP 7.3+ compatibility:
      • Escape hyphen in regex for PHP 7.3 compatibility (#4036)
      • e_model refactoring for compatible subclass method signatures (#2146)
      • {NEWSTITLE} shortcode issue (#4035)
      • A bunch of PHP 7.4 syntax errors (524229ba0b3061ae50b2d47ed4141f3e6ee1c1cc)
      • Fixed inconsistent output in PHP < 7.3 in e_parser::cleanHtml()
      • PHP 7.4.7+ fatal error involving core_index_index_controller (#4203)
    • A lot of PHP E_NOTICE issues (some of them documented in #4074)
    • "Bad File Detected" when uppercase extension used on image. (#4017)
    • Fix for password filter in usersettings.php ("strong password not being hashed correctly") (#4004)
    • Multiple comment navigation issues (#2425, #2281, #2937)
    • Debug output removed from magic shortcode 'caption' (#3860)
    • Added missing shortcode for MENUAREA
    • {USER_EXTENDED} 'text_value' did not display the 'text' label correctly (#3957)
    • Legacy shortcode wrapper conflict with email template (#3726)
    • Banlist search by IP fails when using IPv4 (#4009)
    • Update user_comments when deleting comments from comment manager (#1706)
    • Automatic password rehashing added to admin login page.
    • Sudden logouts in admin area immediately after logging in (#1836)
    • Improved upgrade compatibility from e107 v1.x
    • Detect and refresh language file lists when scanning plugin directories.
    • Relative times displayed incorrectly, like on the user profile (#4080)
    • User profile pager broken (#4146)
    • The email input field in usersettings.php is no longer required if the disable_emailcheck preference is truthy. (#4115)
    • Handle chatbox nicknames with a "." in them (#4162)
    • Quick add users does not save selected userclass permissions (#4095, #1728)
    • ./e107_admin/cpage.php: Added check to prevent saving page/menu with empty page_title and menu_name fields when editing (#1474, #3986)
    • Properly detect antiflood and online tracking prefs (#3681)
    • Admin-UI:
      • Admin-UI/Form Handler: Fix for auto-link generation failing in create/edit mode.
      • Get rid of autocomplete in the Admin-UI (#3131)
      • Admin-UI: Boolean values are rendered differently if inline editing is enable or not (#3058)
      • Improved body ID when Admin-UI is in use
      • Unchecking all the display columns options and saving now clears the user preference and restores the coded default value found in $fieldpref
      • User Column preferences were being ignored when using ajax filtering. (#4121)
      • Inline editing was not triggering events. (#4183)
    • Issue with plugins, menus disappearing or displaying as being uninstalled. (#3741)
    • Incorrect encoding of a plugin language file could cause json encoding to fail. (#3741)
    • Anonymous comments wouldn't show up (#3829)
    • Media-Manager Url fix. Fixed Media Preview. (#4049)
    • Fixed Multiselect dropdown so that an empty value also gets saved
    • Fixed <body> tag when using Menu Manager. Stored HTML-theme true/false var for each theme.
    • Avoid conflicts with earlier themes that may have a 'layouts' folder. (#3961)
    • Avoid legacy globals with v2.x theme templates. (#4124)
    • Themes that need to be purchased are now opened in a new window/tab instead of in an <iframe> to avoid same-origin restrictions (#4208)
    • Category template was changing news frontend template. Category template default should be blank. (#3739)
    • Error display in ./e107_admin/newspost.php
    • Nav styling small screens. (#4020)
    • 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)
    • unsubscribe.php and white page (no error) (#4178)
    • Check for tablestyle() to avoid fatal error with some themes (#4012)
    • bootstrap3 theme:
      • corporate.css fix font path glyphicons (#3998)
      • Moved modal to footer
      • Admin checkboxes are not visible in "Display Columns" window (#4171)
    • bootstrap4 theme:
      • Alerts not showing (#3686)
      • Fix for btn-default in user update information button (#2898)
      • Formatting fixes for private messenger and usersettings
      • More formatting fixes (#4161)
    • Fix for Google and Microsoft advertising auto-tags
    • If the system or cache image directories' parents don't exist, mkdir() would fail to create the system or cache image directories.
    • Prevent HTML code injection in e107::url() (#4054)
    • Add missing Slovak letters to e_parse::toASCII() method (#4101)
    • Removed Image srcset conflicts. Improves rendering quality of fine-lined PNGs under some conditions. (#2981)
    • Mailout - display message when no email address sources are selected (#3303)
    • Remove hardcoded value for parameter order in render_newsgrid() (#4092)
    • Fixed Multiselect dropdown so that an empty value also gets saved.
    • Clarify FPW testing mode button (#4007)
    • Error page ignoring error_template changes (#4137)
    • Fix for correct button class on core signup template (#2160)
    • Signup template correct implementation of GDPR shortcode (#4055)
    • Extended-User type=radio value conversion fix (#4144)
    • Check theme version is compatible and disable installation if necessary (#4200)
    • SQL insert error when creating news and pages while not restricting robots (#4207)
    • alt_auth plugin:
      • Using e107 as secondary authorisation causes blank page (#3983)
      • Fix for fatal error because not supported MySQL function (#3981)
      • Stop using outdated db_* methods (#3993)
      • Fix for wrong user data while creating user (#3982)
      • Fix for missing scenario with secondary source (#3984)
    • download plugin:
      • Download icons fix (#3865)
      • Reported links goto non SEF urls (#3622)
      • Allow class styling to download next/prev shortcodes (#3864)
      • Download RSS feed upgraded to v2 standards
      • Download meta description limit and formatting (#3270)
      • Multiple bugs in the report broken download feature (#2576, #3622)
    • faq plugin:
      • FAQ classic layout broken (#2822)
    • featurebox plugin:
      • Update Featurebox RSS feed to v2 standards
      • Fix for correct category names (#3868)
    • forum plugin:
      • Fix admin dashboard link to reported forum posts
      • Forum e_frontpage - allow selection of a specfic forum as frontpage
      • Tweak forum JS with poll plugin (#647)
      • Forum RSS updated to v2 standards. (#3767)
      • Fix LAN when error occurred when deleting a forum post
      • Forum icons extra check added for consistency (#3948)
      • Fix forum notify checkbox functionality (#1343)
      • Forum email notification option was removed during forum upgrade (v1 to v2) (#176)
      • Check for $rankInfo to prevent unwanted HTML output (#3827)
    • gallery plugin:
      • Gallery custom caption fix. (#2816)
      • Strip any HTML from Gallery breadcrumb (#2979)
    • gsitemap plugin:
      • gsitemap manual entry now working (#3866)
    • import plugin:
      • HTML import, check for PHP Tidy extension (#4027)
    • linkwords plugin:
      • Upgraded linkwords admin area to v2.x specifications.
    • login_menu plugin:
      • Hide login_menu when user registration AND login are disabled (#3527)
    • news plugin:
      • Fix for news sitelink when alias in use.
      • Show message on news items when comments disabled while global comments are enabled (#3680)
      • Correct message when no news items are found on specific day (#2694)
      • News archive button template added. (#3862)
      • Incorrect RSS URLs on news (#4172)
      • {ACTIVE} shortcode typo (#4206)
    • pm plugin:
      • PM menu title setting is now respected (#3925)
    • social plugin:
      • Reworked for Hybridauth upgrade (#3492, #4099)
      • Removed Google+ share button
      • Add Twitch and VK to Social Pages (#4167)
    • user plugin:
      • Created user/e_search addon and upgraded to v2 specs

    For Developers

    Added

    • e_db is the new interface for database abstraction. It is implemented by e_db_pdo (PDO-based) with a fallback of e_db_mysql (mysqli-based).
    • Automated tests have been introduced. (#4038)
    • 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
    • Bootstrap 3 shims into Bootstrap 4 (#2970)
    • Added support for dynamic header/footer templates controlled by the theme_shortcodes class. (#3932)
    • Added class parameter to shortcodes for pager ({USER_JUMP_LINK}) (#4001)
    • A shortcode which allows you to display the userclass icon: {USER_USERCLASS_ICON} (#2225)
    • Lazy loading of images in {NEWS_IMAGE} shortcode can be invoked with {NEWS_IMAGE: loading=lazy}
    • Cross-platform strptime() replacement: e_shims::strptime() (#4077)
    • e_parser:
      • Added d (digits) flag to parser filter.
      • e_parser::toAvatar():
        • 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)
    • Removed the need for the BODYTAG constant (#2308)
    • 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.
    • 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)
    • e_db_pdo::copyRow() - Greatly decrease collision chance
    • sitecontactinfo and contact form have the same style ID (#3684)
    • parms doesn't work with new Admin UI with datestamp field (#3759)
    • Trigger admin_user_delete was not firing (#3969)
    • array_diff_recursive() type check for recursion
    • 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)
      • Removed duplicated type=hidden elements. (#3461)
      • Avoid an unexpected dropdown result if writeParms['optArray'] is defined but empty.
      • Fatal error with boolean after using batch option (#3936)
      • Check-all checkbox class conflict (#4166)
      • Custom field problem with single quote value (#4165)
    • Corrected multiple event includes conflict (#4079)
    • Prevent e-modal conflict with other modals. (also supports data-modal-target attribute)
    • Fix for faulty srcset height value when using overrides and a default.
    • Bootstrap 4 e_parser::toBadge() fix.
    • placeholder attribute wasn't working on datepicker input.
    • Fix for e_form::name2id() when = and ? characters are detected is found.
    • Improved URL matching for layout detection. Closest match will always be used.
    • Consistency for news items check in months_menu and blogcalender_menu (#2694)
    • Exclude e107.css doesn't work (#4153)
    • Database verification was failing when field name ended in a digit (#4155)
    • Moved a hard-coded LAN in e107_handlers/media_class.php (#4043)
    Source code(tar.gz)
    Source code(zip)
    e107_2.3.0-rc1_full.tar.gz(10.84 MB)
    e107_2.3.0-rc1_full.zip(11.82 MB)
    e107_v1.x_to_2.3.0-rc1_upgrade.tar.gz(10.86 MB)
    e107_v1.x_to_2.3.0-rc1_upgrade.zip(11.87 MB)
    e107_v2.x_to_2.3.0-rc1_upgrade.tar.gz(8.16 MB)
    e107_v2.x_to_2.3.0-rc1_upgrade.zip(8.77 MB)
  • v2.2.1(May 29, 2019)

    New features:

    • Added new News shortcode {NEWS_AUTHOR_EUF} to retrieve Extended User Fields (e.g. {NEWS_AUTHOR_EUF: field=biography})

    Fixes & Improvements

    • Fixed a database check/update issue that occurred when the database name contains a hyphen (-) (#3800)
    • Fixed an issue with the Menu Manager preview not loading in some cases (#3815)
    • Fixed frontpage button link to Admin Area (#3775)
    • Fixed an issue with inserting a new custom page when using PHP 7.3 (#3812)
    • Added tablerender id to error pages (#3801)
    • Fixed an issue with (un)seralization (#2990)
    • Fixed comment author avatar not showing correctly in comment form (#3813)
    • Fixed issue in Download plugin with batch userclass options
    • Fixed issue in Forum plugin with forum moderator userclass recognition (#3814), with the Userlist shortcode links (#3809), and added placeholder option in {SEARCH} shortcode
    • Several Forum template optimizations for Bootstrap 4 (#2969)
    • Several PHP 7.3 compatibility improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.2.0(May 19, 2019)

    IMPORTANT NOTES:

    • The minimum PHP version as of 2.2.0 is now set to 5.6. Using PHP 7.1+ is recommended.
    • If you use any PHP version lower than 5.6, your website may break!
    • Bootstrap 4 Library has been updated to latest version: 4.3.1. See examples in the bootstrap4 theme
    • FontAwesome has been updated to the latest version 5.7.2. See examples in the _blank theme (theme.xml and theme.php)
    • db_Fetch() in e_LEGACY_MODE permanently removed. Old plugins should use e107::getDb->fetch('both'); if this is still required.
    • Changes to comments: Any reference to #comments-container (div ID) in the theme must be changed to .comments-container (div class) (#1944)

    New features:

    • GDPR features: added "Privacy Policy" and "Terms and conditions" preferences. Added {SIGNUP_GDPR_PRIVACYPOLICY_LINK} and {SIGNUP_GDPR_TERMSANDCONDITIONS_LINK} shortcodes. (#3175 and #3579).
    • Admin Login with email address is now functional
    • Chatbox plugin: new default templates added (#3630)
    • Constants SITENAME SITEDESCRIPTION can be overridden using English_custom.php or English_global.php plugin LAN files.
    • Added more styling functionality to {SIGNUP_IMAGES} and {SIGNUP_SIGNUP_TEXT} (#3582) and {LOGIN_*} shortcodes (#3466)
    • Added event triggers for rate/like functionality: user_like_submitted & user_rate_submitted (#3552)
    • Added load() method for the e_admin addon. See _blank plugin for examples. (#3695)
    • New MySQL database export method integrated to increase performance when creating a backup
    • "Under the hood" preparations to clean-up existing code (improving code quality) and introduction of new (database) interfaces for better support of up-to-date technology and easier 'hookings' of other/external interfaces (e.g. databases)
    • For developers: automated tests added in e107-test repository https://github.com/e107inc/e107-test (to prevent bugs from being introduced, rather than having to fix them after they are an issue)
    • FontAwesome is now used by the NextPrev
    • New method added e107::getUserClass()->getUsersInClass
    • News e_related, added {RELATED_DATE} shortcode
    • Added afterPrefsSave() method in Admin-UI (#3799)

    Fixes & Improvements

    • Several improvements to plugin installation and related addons (#3531, #3536, #3592)
    • Improvements to plugin identification when checking for updates (#3711)
    • Several fixes to the Private Messenger plugin (#1758, #3413)
    • Several fixes to the Banner plugin (#3141)
    • Several fixes to the FAQ plugin
    • Several fixes to the Forum plugin: not being able to move a forum post (#3619), forum moderators permissions (#3490), deleting of last post (#3490), forum pagination, newforumposts plugin (#3757), inline editing of forum name was changing SEF URL (#3798)
    • Several fixes to the Download plugin (#3201, #3189, #3199, #2486, #3787)
    • Fixed an issue where the verification of LAN pack would falsely return errors (#3632)
    • Fixes to 'type' => 'country' in the Admin-UI (#3644)
    • Enhancements to the 'search' functionality in Admin-UI across different fields
    • User Extended Field country correctly displayed in User Profile (#3646)
    • User Extended Fields 'read' permission is now properly checked (#1799)
    • Avatars now support 'crop' to allow for non-square images. Simple usage: {USER_AVATAR: w=150&h=150&crop=1&shape=circle} (#3721)
    • Fixed an issue with the Admin Area > Preferences page crashing on specific Windows server environments (#3625)
    • Fixed an issue with the SEF URL configuration when social network tracking queries were used (e.g. Facebook links) (#3546)
    • Several improvements to theme layout detection
    • Improved user_forum_post_report, user_forum_post_report and user_forum_topic_created_probationary event triggers (#3618)
    • Improved filetypes and filesize checks when uploading files (#3507, #3460)
    • Added /contact SEF URL (#3566)
    • Fixed an issue with navigation (site links) icons not resizing properly (#3712)
    • Fixed an issue with list() method in the the e_admin addon (#3695)
    • Fixed an issue with userclasses being reset when 'probationary' user was automatically promoted to 'normal' user (#3657)
    • Rewritten "password reset" functionality to support webmail software pre-loading links. Links expire in 10 minutes now. (#3443)
    • "Required fields" indicator now properly showing on signup page and usersettings (profile) (#3676)
    • Relative datestamp now properly distinguishes between past and future dates (#3605)
    • Improved backwards compatibility when using BBcodes and WYSIWYG editor
    • Fixed an issue with Admin Help text not displaying in correct language (#3485)
    • Several enhancements to handle deprecated mysql_*() methods and improved PDO usage
    • Several compatibility fixes with Bootstrap 4 (#2962, #2969, and others)
    • Several PHP 7 compatibility fixes (#3216, #3596, #3562 and others)
    • PHPMailer upgraded to 5.2.27
    • plupload upgraded to v2.3.6
    • And dozens more fixes and improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.1.9(Aug 22, 2018)

    Important: anyone experiencing core-prefs backward compatibility issues after this upgrade, please use the e107_2.1.9_bc_patch.zip patch

    New features:

    • It is now possible to override the chosen editor pref (WYSIWYG), using the e107::getForm()->bbarea() method by changing the $options array, e.g. $options['wysiwyg'] = 'tinymce4' (#3330)
    • Added option define('X-FRAME-SAMEORIGIN', false); in e107_config to allow for external websites including an e107 website through an iframe (#3101)

    Fixes & Improvements

    • Fixed issue in update routine caused by an incorrect version number (#3302 #3311)
    • Added backwards compatibility fix to handle old data formatting better (#3305)
    • Fixed issue with multiple userclass selection in the Admin UI (#3249)
    • The CSS file ensuring backwards compatibility for non-boostrap or legacy themes (backcompat.css) is now correctly loaded
    • Fixed issue with LAN's not loading properly on contact.php page
    • Fixed issue with parsing the + sign (#3307)
    • Fixed issue with 'To' textbox not showing in mail-out functionality (#3303)
    • Fixed issue with missing navigation text in Admin Area when using 'medium' width devices
    • Improved support for SVG icons (#1958)
    • Fixed several issues related to the displaying of comments (#2425 #2281 #2937)
    • Fixed issue so 'Items per page' option is now respected on custom pages (#3188)
    • Added default custom fields to Bootstrap 3 template (#3103)
    • Improved support for Cyrillic characters on registration and login (#2440)
    • Fixed an issue with the language packs not displaying in the Admin Area (#3059)
    • Added e_gsitemap addon to News and Download plugin (#2606)
    • Fixed an issue with error pages and redirection (#3179)
    • Added new event triggers and notifications for the Forum plugin: user_forum_topic_created_probationary, user_forum_topic_updated, ser_forum_topic_moved, user_forum_topic_deleted, user_forum_topic_split, user_forum_post_created, user_forum_post_updated, user_forum_post_deleted, user_forum_post_report
    • Added BBcode template for Forum plugin (#3317)
    • New preferences in Forum plugin which allow to choose between BBcode or TinyMCE editor (#3318)
    • Fixed issues with Forum plugin URLs (#3171)
    • Fixed URL issue in Forum plugin when moving a forum topic (#3244)
    • Improved Forum parsing: forum titles are only shown using plain text (no HTML or BBcode) (#3245)
    • Plugin Builder generated output improved with examples of custom filter and batch options.
    • Fixed an issue in the forum plugin when marking a forum topic as 'read' (#3338)
    • Fixed issue in the featurebox plugin which caused debug information to show (#3290 #3074)
    • Fixed issue with incorrect 'update required' message showing for the featurebox plugin
    • Several PHP 7 compatibility fixes
    • And dozens more fixes and improvements
    Source code(tar.gz)
    Source code(zip)
    e107_2.1.9_bc_patch.zip(31.16 KB)
  • v2.1.8(Aug 6, 2018)

    New features:

    • New functionalities for 'User ranks' (#2222)
    • New addon e_gsitemap for Sitemap generation. See forum plugin for an example.
    • Basic support for NGINX secure_link_md5 (#3075)
    • Basic support for GPDR related functionalities (#3175)
    • New addon e_output.php to capture the output of a page in a buffer (#3151)
    • Forum plugin: categories can be copied using the Admin-UI

    Fixes & Improvements

    • Improved check for server requirements during installation
    • Improvements to the loading and ordering of CSS files
    • Numerous fixes related to the 'tree view' in the Admin-UI (News, Downloads, Sitelinks, etc.)
    • PHP 7.x compatibility fixes
    • Forum plugin: fixes to the newforumposts plugin
    • Admin-UI: Searching for IP addresses (including wildcards *) works again
    • Admin-UI: Added "Is Empty" option to type=number when filter is true.
    • Admin-UI: $field 'filter' attribute now accepts 'future' and 'both', defaults to 'past' when set to true. ie. search future dates, past/future dates or past dates.
    • And dozens for other fixes and improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.1.7(Dec 25, 2017)

    New features:

    • New admin style added “K-admin inspired”
    • Grid View for Admin interface added (#2794)
    • Option to convert image formats from png or gif to jpeg during import added
    • Pre-release language packs are now also visible in the language manager
    • News-List template now support special styling for the first item
    • Support added for multiple news templates (#2795)
    • {NEWS_IMAGE} Auto Carousel option added to news (#2809)
    • Added {NEWS_RATE} shortcode
    • Added NEWS_LAYOUT constant
    • Social login Yahoo added
    • Multisite navigation support (when using the ‘multisite’ plugin)

    Fixes & Improvements

    • HybridAuth upgraded to v2.9.6 and LinkedIn login fixed
    • Fixes for the installation routine on specific server configurations
    • Several fixes to the SEF URLs across all areas
    • Several fixes to the caching functionality (especially in ‘news’)
    • Fixed issue with plugin preferences not saving correctly when value is '0'
    • ‘Voux’ is now set as the default theme during installation
    • LAN fixes, improvements and clean up
    • Several fixes and improvements for backwards compatibility
    • Performance improvements (database, update checks, loading of Glyps)
    • PHP 7 compatibility improvements
    • Fixes to admin and user permissions
    • PHP notices and warnings clean up
    • And many many more bugfixes
    Source code(tar.gz)
    Source code(zip)
  • v2.1.6(Aug 11, 2017)

    Fixes/Improvements:

    • TinyMce updated to 4.5.6
    • PHP Mailer Upgrade to 5.2.23
    • Improvements to sending email procedure (SMTP)
    • Bug fixes to plugins: Chatbox, Downloads, FAQ, Featurebox, Forum
    • News: meta-description character limit option added. ie. {NEWS_DESCRIPTION: limit=x}
    • Downloads: now supports file in root directory (no longer 'parent > child" needed)
    • Several fixes to SEFL URLs, including automatic generation
    • Numerous LAN enhancements (thanks @yesszus)
    • Caching improvements
    • Improvements to meta-tags
    • Further fixes for PHP 7.1 compatibility
    • Fixes to the backup/export functionality
    • Javascript files are now moved to the footer
    • Improved logging to system logs (especially SQL queries)
    • Improved sessions handling (should prevent sudden logout)
    • And literally dozens of other bugfixes and optimizations

    New features:

    • Language-Packs can now be downloaded and installed without leaving the admin area
    • New MySQL method selectTree()
    • New constant e_HTTP_STATIC
    • New constant e_VERSION which returns the currently installed version of e107
    • Custom TinyMCE snippets can now be placed in the theme folder as custom templates: templates/tinymce/snippets
    • Ability to override site path (hash) by defining $E107_CONFIG['site_path'] in e107_config.php
    • Table data from e107 v1.x "Content Management" plugin can now be imported into "Pages/Menus"
    Source code(tar.gz)
    Source code(zip)
  • v2.1.5(Mar 21, 2017)

    Fixes/Improvements:

    • Significant amount of LAN work (thanks to @yesszus)
    • Numerous speed and memory usage optimizations (work in progress)
    • 'Country' extended user field (EUF) working again
    • Several backwards-compatibility fixes for v1 plugins
    • Cleanup and enhancements to the library manager (see _blank theme/plugin for usage)
    • Added more id and class tags to allow for more styling (e.g. forum plugin)
    • {NEWFORUMPOSTS} working again (but still deprecated, it is replaced by the newforumposts_menu in the forum plugin)
    • Several fixes to the upgrade procedure from v1.x installations (e.g. users with a . in their username are now properly recognized again)
    • Plugin manager is now using the Admin UI
    • Changed enabled/disabled option to on/off (using a new switch) in the Admin Area
    • Userpicker method working again when using SEF URLs
    • And literally dozens of other bugfixes and optimizations
    • News Grid Menu template upgraded for greater flexibility

    New features:

    • Page/Menu custom fields (documentation coming asap)
    • e107::getParser()->toFile() method added
    • {CHAPTER_MENUS: id=chapter-sef-url} shortcode added
    • New event added: user_chatbox_post_created
    • the e_parse addon can now also hook into the e107::getParser()->toDb() method
    • "Theme converter" allows to create a new theme based on an existing theme (/e107_admin/theme.php?mode=convert)
    • Start of SVG icon support (not completed yet)
    • Theme shortcodes may be assigned as sitelink (navigation) dropdown content.
    Source code(tar.gz)
    Source code(zip)
  • v2.1.4(Jan 17, 2017)

    Fixes/Improvements:

    • Menu Manager rewritten (menu selection is now seperated from theme layout, providing a more accurate preview)
    • Fixes for PHP 7.1 - installation now works again
    • Theme thumbnails added to installation wizard.
    • Fix for uploading of forum attachments
    • Fix for incorrect forum avatar showing in some cases
    • Added check to prevent server IP from getting banned
    • Various fixes for the user extended fields (both admin and frontend)
    • Possible fix for session issues on some server configurations
    • Cosmetic changes to the admin area
    • Numerous LAN and templating improvements (allowing for translation and customisation)
    • And many more minor fixes

    New features:

    • New theme "landingzero' with embedded video.
    • Notification and automatic updating of new versions of plugins and themes
    • Ability to export/import plugin preferences
    • Support for custom font-icon sets in themes with user selection from those sets within the admin area (theme.xml).
    • Bootstrap 4 'Cards' support. New setContent() method added for breakdown of $text into separate elements for use by tablestyle() when available
    • New Constant: THEME_LEGACY added. Old themes will have a value of true, new themes (using theme.xml) as false
    • New forum shortcodes: {TOPIC_TITLE} and {TOPIC_URL}
    • Theme config can now use plugin $fields markup and save prefs to own table
    • New event added: user_profile_edit (see event documentation)
    Source code(tar.gz)
    Source code(zip)
  • v2.1.3(Dec 25, 2016)

    Fixes/Improvements:

    • Improved error handling when downloading plugins/themes from admin area
    • Avatar and photograph uploading fixes
    • More flexibility to forum templating added
    • Caching functionality optimized for better performance
    • Accessibility improvements to contact form
    • Fixed installation errors on some PHP versions
    • Better backwards compatibility for javascript loading in v1 plugins
    • Several fixes to social login functionalities
    • Timezone handling changes
    • PHP 7.1 fixes (not completely stable yet)
    • Numerous hardcoded LANs are now translatable and optimized
    • And many more minor bugfixes and improvements

    New features:

    • More flexible templates for custom admin area dashboard layout
    • Error pages: ability to change error page content and template (documentation coming)
    • e_admin addon now allows for plugin to hook into batch admin UI actions (see _blank plugin for an example)
    • Ability to set a "scope" for HybridAuth provider (social logins)
    • New events added: user_xup_updated, user_news_item_viewed, user_page_item_viewed and user_comment_deleted (see event documentation)
    • SEF URLs can be enabled/disabled on a per plugin basis
    • Banner plugin now support external image URLs
    • Bootstrap navigation now supports sub-links of sublinks

    Other notes:

    • Tagwords plugin removed from core, replaced by TagCloud plugin (introduced in v2.1.2)
    • PHP 5.4 is now the minimal required version
    • Disabled the loading of legacy core path e107_themes/templates/ (v1 legacy override still available)
    Source code(tar.gz)
    Source code(zip)
  • v2.1.2(Oct 28, 2016)

    Fixes/Improvements:

    • Strongest PHP Password Encryption added as default
    • Numerous fixes related to MySQL and PDO handling
    • Removal of many hardcoded LAN phrases, allowing for translation
    • Replaced e_tohtml.php addon with e_parse.php allowing for more functionality and customization
    • Improved e_sitelink.php addon to support easy-to-make mega drop-down menu's
    • Rewrite of $frm->userpicker() method to allow for maximum customization
    • And literally hundreds of additional bug fixes and enhancements in all areas

    New features:

    • News Grid Menu added (see https://github.com/e107inc/e107/issues/1512)
    • New Tagcloud Plugin
    • New shortcode in News: {NEWS_VISIBILITY}
    • New-user statistics added to Admin Area dashboard
    • Developers can now hook into the meta-tags and alter them (see https://github.com/e107inc/e107/issues/1946)
    • New e_event.php addon to register events (see the _blank plugin for an example)
    Source code(tar.gz)
    Source code(zip)
  • v2.1.1(Apr 6, 2016)

    Fixes/Improvements

    • Fixed issues with gzip compression
    • Updated forum icons template
    • Numerous fixes to PDO functionality
    • Several improvements to uploading files routine (for example forum attachments)
    • Improvements to PHP7 compatibility
    • Major improvements to the user extended fields functionality
    • Fixes to the 'newforumposts' menu
    • Fixed language selection during installation process
    • Improved SSL detection
    • Numerous enhancements to the 'Private Message' plugin
    • Improved BbCode/Shortcode debugging.

    New functionalities:

    • Members only functionality: option to redirect to login page or membersonly splash page
    • {USER_EUF: field=xxxx} shortcode added
    • For developers: the e107::debug() allows to push messages to the browser console
    • Added template for deleted topic in the forum plugin
    Source code(tar.gz)
    Source code(zip)
  • v2.1.0(Mar 20, 2020)

    Major enhancements

    • PHP 7 compatible
    • PDO support now fully functional
    • New AJAX API
    • Library Manager added

    Other enhancements

    • Bootstrap, FontAwesome, TinyMCE updated to latest version
    • Search functionality now has more capabilities (including forum integration)
    • Thumbnail and dynamic image sizing performance improvement
    • Added support for Javascript and CSS caching
    • Banner plugin functionalities added ('sync' with keywords in news)
    • "Related News" template
    • User profile template update
    • Avatar import via Media-Manager
    • Improved Social login mechanism with added support for Steam

    Bugfixes

    • Forum topic tracking functional
    • Forum backwards compatibility fixes
    • Various fixes relating to Search Engine Friendly URLs
    • Numerous improvements to the GUI in the admin area
    • Fixes and improvements to the statistics logging plugin
    • ... and over 100+ other bugfixes (too many to list)
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0(Sep 2, 2015)

  • v2.0-beta1(Feb 11, 2015)

    405 Issues and fixes later, we have e107 v2.0 beta1. Currently in use on e107.org and other websites.

    Be aware that while this release is quite stable, caution is advised when upgrading from an earlier (1.x) version. Always make proper file and database backups before upgrading!

    Source code(tar.gz)
    Source code(zip)
  • v2.0-alpha2(Jun 21, 2014)

    Next alpha release containing hundreds of bug fixes since alpha 1.

    Be aware that the alpha release is a development release. Caution is advised when upgrading from a live website. Always make proper backups before upgrading!

    Source code(tar.gz)
    Source code(zip)
  • v2.0alpha(Jul 28, 2013)

    Testing required: These are some of the areas that we would like to receive feedback on:

    • The upgrading process from v1.x to v2.x. This should be a matter of uploading the alpha release files onto the latest v1.x installation. After visiting your website you will be redirected to the admin area where it will assist you in the upgrade process. Your data will be retained but please always backup your data first, as with any update, just in case.
    • Backwards Compatibility (BC). This includes the ability to use plugins and themes (that were originally created for 1.x) on 2.x installations. Anything that worked on a 1.x installation should work on 2.x. (In some cases minimal adjustments may be required). The forum plugin is an exception to this as it has been heavily modified in the way it stores its data. You can notify us of outdated plugins here: #195
    • New features. Several new features such as the media-manager and the integration of jQuery and Bootstrap need testing. Feel free to comment on all of those new features.

    More info here: e107 Inc. releases its initial ‘alpha’ version of e107 v2

    Be aware that the alpha release is a development release. Caution is advised when upgrading from a live website. Always make proper backups before upgrading!

    Source code(tar.gz)
    Source code(zip)
Owner
e107 Content Management System
e107 Content Management System
Baicloud CMS is a lightweight content management system (CMS) based on PHP and MySQL and running on Linux, windows and other platforms

BaiCloud-cms About BaiCloud-cms is a powerful open source CMS that allows you to create professional websites and scalable web applications. Visit the

null 5 Aug 15, 2022
Flextype is an open-source Hybrid Content Management System with the freedom of a headless CMS and with the full functionality of a traditional CMS

Flextype is an open-source Hybrid Content Management System with the freedom of a headless CMS and with the full functionality of a traditional CMS. Building this Content Management System, we focused on simplicity. To achieve this, we implemented a simple but powerful API's.

Flextype 524 Dec 30, 2022
Soosyze CMS is a minimalist content management system in PHP, without database to create and manage your website easily

Soosyze CMS is a content management system without a database. It's easy to create and manage you

Soosyze 41 Jan 6, 2023
The repository for Coaster CMS (coastercms.org), a full featured, Laravel based Content Management System

The repository for Coaster CMS (coastercms.org) a Laravel based Content Management System with advanced features and Physical Web integration. Table o

Coaster CMS 392 Dec 23, 2022
Fully CMS - Multi Language Content Management System - Laravel

Fully CMS Laravel 5.1 Content Managment System not stable! Features Laravel 5.1 Bootstrap Authentication Sentinel Ckeditor Bootstrap Code Prettify Fil

Sefa Karagöz 479 Dec 22, 2022
A small CMS for SaaS - A tiny content management system

Fervoare CMS A tiny content management system Project created in 2012 and ported to GitHub in 2021. Getting started Assuming you have installed a LAMP

Mark Jivko 3 Oct 1, 2022
Simple Content Management System (CMS) Blog Using Codeigniter with Hierarchical Model View Controller (HMVC) Architectural

Simple Content Management System (CMS) Blog Using Codeigniter with Hierarchical Model View Controller (HMVC) Architectural This is my source code trai

Simon Montaño 1 Oct 28, 2021
Coaster CMS a full featured, Laravel based Content Management System

The repository for Coaster CMS (coastercms.org) a Laravel based Content Management System with advanced features and Physical Web integration. Table o

Coaster CMS 392 Dec 23, 2022
Charcoal Content Management System (CMS) Module

Charcoal CMS The CMS Charcoal Module (Content Management System). Provides basic objects to build a website. Notably, Section (or page), News, Event a

Locomotive 44 Sep 12, 2022
A Concrete CMS package to add interfaces to translate multilingual content. You can translate content manually, or use cloud API.

Concrete CMS add-on: Macareux Content Translator Concrete CMS has powerful features to manage multilingual content by its default. You can add languag

株式会社マカルーデジタル 3 Nov 28, 2022
Bootstrap CMS - PHP CMS powered by Laravel 5 and Sentry

Bootstrap CMS Bootstrap CMS was created by, and is maintained by Graham Campbell, and is a PHP CMS powered by Laravel 5.1 and Sentry. It utilises many

Bootstrap CMS 2.5k Dec 27, 2022
Simple, modular content management system adapted for launch pages and one-page websites

Segmint Segmint is an easy-to-use flat-file landing page framework, allowing quick and efficient prototyping and deployment - perfect for freelancers

null 2 Jul 19, 2022
Monstra is a modern and lightweight Content Management System.

Monstra is a modern and lightweight Content Management System.

Monstra Content Management 398 Dec 11, 2022
Amila Laravel CMS - Free, open-source Simple Bootstrap Laravel CMS

Simple Bootstrap Laravel CMS. Support Laravel 8.x Can integrate into any existing Laravel project. Only add few database tables with prefixes, not affect your existing database tables. Support Laravel 7.x & Laravel 6.x & Laravel 5.x & MySql & PostgreSql - Amila Laravel CMS

Alex Zeng 96 Sep 6, 2022
Core framework that implements the functionality of the Sulu content management system

Sulu is a highly extensible open-source PHP content management system based on the Symfony framework. Sulu is developed to deliver robust multi-lingua

Sulu CMS 921 Dec 28, 2022
ExpressionEngine is a mature, flexible, secure, free open-source content management system.

ExpressionEngine is a flexible, feature-rich, free open-source content management platform that empowers hundreds of thousands of individuals and organizations around the world to easily manage their web site.

ExpressionEngine 366 Mar 29, 2022
An advanced yet user-friendly content management system, based on the full stack Symfony framework combined with a whole host of community bundles

An advanced yet user-friendly content management system, based on the full stack Symfony framework combined with a whole host of community bundles. It provides a full featured, multi-language CMS system with an innovative page and form assembling process, versioning, workflow, translation and media managers and much more.

Kunstmaan | Accenture Interactive 374 Dec 23, 2022
Mecha is a flat-file content management system for minimalists.

Mecha CMS Mecha is a flat-file content management system for minimalists. Front-End The default layout uses only Serif and Mono fonts. Different opera

Mecha 133 Jan 1, 2023
Feindura - Flat File Content Management System

feindura - Flat File Content Management System Copyright (C) Fabian Vogelsteller [frozeman.de] published under the GNU General Public License version

Fabian Vogelsteller 39 Dec 30, 2022