Tiki 21.0 was released in March 2020.
It requires PHP 7.2, vs PHP 7.1 for Tiki20, and at least MySQL version 5.5.3, which provides support for utf8mb4 encoding.
It is a Long Term Support (LTS) version and will be supported until March 2025 as per the Tiki lifecycle policy
Please note: SVN updates (for all versions of Tiki) will stop in January 2023 when Tiki18 reaches end of life, so you should get your updates from Git
doc/devtools/release.php. For the first time in History we release Tiki using Git! Thanks also to Jonny for testing a tarball in the process of release.
Add warning message in admin control panel when Tiki detects vendor folder issues: http://sourceforge.net/p/tikiwiki/code/66408
Top quick admin bar and sticky floating apply buttons for admin forms. Detail at Tiki19 Admin Enhancements
This is the most far reaching upgrade in Tiki19: Moved from Bootstrap 3 to 4.
As Tiki transitions from Bootstrap 3 to 4, support for Internet Explorer 8 and 9 is being dropped. Internet Explorer 10 also stops being fully supported officially, but it should mostly work.
Moved from old no-longer supported fork fullcalendar-resourceviews to latest and greatest official FullCalendar, and Scheduler (GPL) available via Packages -> https://sourceforge.net/p/tikiwiki/code/66298
Also using Bootstrap 4!
- See also CalDAV
- https://sourceforge.net/p/tikiwiki/code/71008 via SabreDAV
- With recurring events
- Calendar Invitations by email
New actions added to
file:checknow supports wiki attach, forum attach and tracker attach https://sourceforge.net/p/tikiwiki/code/69545
objects:notify-maintainers: Send out email notification to maintainers for objects whose freshness is greater than the limit. Related: #Tiki_Objects\:_maintainers_and_freshness
vcs:automerge: Semi Auto Merge (for developers)
vcs:fixids: Fix the Id's of SVN Keyword for all files (for developers)
vcs:update: Update SVN to latest version & perform tasks for a smooth update.
translation:englishupdate: Fix English strings after modifying them.
translation:getstrings: Update language.php files with new strings
tiki:stats: Display a table with the KPIs
preferences:export: Export preferences
ocr:set: Set the OCR status of files (Queue, Skip)
ocr:status: Give statistics on file OCR status (Queued, Processing, Finished, Skipped)
dev:fixbom: Fix BOM and line endings for all files (for developers)
- generate/warmup caches, and in TRIM as well
Feature was improved: https://sourceforge.net/p/tikiwiki/code/71556
Added support for Elasticsearch 6.x while maintaining support for 2.x and 5.x see Elasticsearch requirements.
Add email threading capabilities for tiki email notifications in Forums and Blog Post comments: http://sourceforge.net/p/tikiwiki/code/65982
Better URLs: http://sourceforge.net/p/tikiwiki/code/66574
- Major revamp to make it easier to add new features
Some improvements were added to H5P. For instance, the ability to directly fetch presentations from the remote H5Phub site:
Add preference to convert tiki instance absolute URLs with relative URLs in content: URL conversion from absolute to relative
- Replace PEAR Net_LDAP2 (no longer maintained) with Zend\Ldap: http://sourceforge.net/p/tikiwiki/code/66965
From Tiki20.1 and up It is possible to use Open Layers version 3 as well as version 2 (default). Version 3 offers many improvements that will help using Map and Location related features. Enhancements will/can be implemented and it started with the following:
From Tiki20.1 and up The open Layer 3 (see above) "Clusters Features" add the capability to display group of Features / Objects (points, markers, zone, etc) based on distance from a determined feature (see terminology)
Remove the CSS menu (suckerfish/superfish) menu type, and enhance Bootstrap menus with the SmartMenus system, which offers most suckerfish features and also permits "Mega Menus" (enhancement as an admin option) - http://sourceforge.net/p/tikiwiki/code/66963 .
See Minify CSS
New or enhanced.
Admins can now easily change the site logo by hovering over it, clicking the icon that appears and uploading a new logo directly to file gallery.
To perform a search by choosing from multiple search engines.
Top Admin Bar works on the top position and gives a mini control panel to Tiki Admins.
New module. This module lists the permissions for current object. It help site admins know which group has which permission on the current object, and how (ex.: object permissions vs category permissions vs global permissions)
- Add option to display the admin panel in different language, also backported to Tiki18
- Enable translation of preferences. Active for browsertitle, metatag_keywords, metatag_description, also backported to Tiki18
- Improvements in wikiplugin_subscribenewsletter on layout and mandatory fields: http://sourceforge.net/p/tikiwiki/code/66573
- Add option to import newsletter subscribers from trackers
A new feature to index content after Optical Character Recognition (OCR) was added via https://packagist.org/packages/thiagoalessio/tesseract_ocr and it even led to some enhancements upstream
See OCR Indexing
1.31.1. Add new console command to generate/warmup caches, and in TRIM as well
- Upgraded from mPDF 7 to 8
For PDF viewing, we will start using code directly from Mozilla's PDF.js, and installable via Packages -> PDF.js viewer
- parent/child functionality and tests for: files/file galleries, posts/blogs, threads/forums, events/calendars, articles/topics. It also adds the necessary tests for this functionality.
- tracker item permission links, so users can set up permissions on individual tracker items
- extended permission page to show if the permissions you view are global, category based, parent object based or direct. New thing here is parent object permissions - so if you view a child objects permissions and are actually looking at parent's object, it says so and offers a link to go and edit the parent object's permissions (i.e. tracker ones) directly.
Now, almost all of this work will be useless unless we offer Tiki users a way to manage permissions on the child level. I think that's the purpose of this task, right? I mean, up to now, there was no way of setting tracker item individual permissions, blog posts individual permissions, article individual permissions, calendar items individual permissions and so on. There is no such UI. We also don't have ability to set up individual file permissions but all file-related permissions work on the file gallery. This commit makes it possible to use parent-level permissions for all these entities but we still don't have UI to set those permissions. Furthermore, there are numerous places in Tiki where permissions are enforced and they all work on the parent-level - i.e. checking if a file could be downloaded actually checks if you have download permission on the file gallery file resides in. I plan to change this the following way:
- anywhere a child permission is needed, it is checked first and then the parent one is used (e.g. download a file, view a blog post, edit an article, etc.)
- anywhere a parent permission is needed, it is still checked on the parent level (e.g. upload a file in a gallery, add a blog post, etc.)
- add Permission links to all Wrench icon/settings menu items for all the child entries - i.e. allow users to edit individual blog post, file, article, forum thread or calendar event permissions.
At tiki-objectpermissions.php it is now possible to order the Permissions by modifying the way you want the tiki-objectpermissions_order.yml file.
You can edit db/config/tiki-objectpermissions_order.yml and move the permission in the order you prefer.
This is reserved for power users for now but it may soon help to improve Tiki UX by "better" organising the permissions or an option for several set distributed with the release.
http://sourceforge.net/p/tikiwiki/code/66243 (backported to 18.x)
- Offline access via Progressive Web App
- Add a new scheduler tasks to notify admins of Tiki updates
- Supports profiles
- http://sourceforge.net/p/tikiwiki/code/66254 (backported to 18.x)
- http://sourceforge.net/p/tikiwiki/code/66255 (backported to 18.x)
- Improvements in sessions when using mysql/memcached as storage locations (Both mechanisms now have lock/unlock grants to avoid race conditions.)
- Jquery.s5 based tiki-slideshow.php replaced with more advanced Reveal.js library
- PDF export is done via mPDF
- Google ReCaptcha V2 has been upgraded to Google ReCaptcha 3
Tiki in its goal to be an ocean of several useful and secure features for the user, we have chosen to give you the opportunity to choose between different versions of spam security features.
Which is why you can currently choose in the settings to activate the Google ReCaptcha 2 or 3 version.
- How will reCaptcha V3 stop spam?
The previous ReCaptcha (v2) worked because it tracked the user movement (scrolling, clicking) while the user solved the captcha (clicked on "I'm not a robot"). v3 does the same, but there is just no button to click on, google just "watches" the client and determines wether there is a human controlling the mouse on the other side.
- What if a hacker spams the URLs on my site with an external tool without using the interface I provide?
Google generates a token for the client when he passes the checks which you have to validate on the serverside. If someone doesn't pass the captcha (a robot), he doesnt have the token.
- How to activate Google ReCaptcha V3 in Tiki?
In control panel, press the "Security" feature, then the "Spam Protection" tab,
Then go to https://www.google.com/recaptcha/intro/v3.html
Create a site, add your domain, and then select version 3 of google ReCaptcha, and validate.
You will get two keys that are scrolled in Tiki respectively and then copy-paste and validate and here you are with version 3.
- antibot captcha
Google Analytics and
Piwik Matomo Analytics: Added a way to include or exclude groups.
Use case: when a Tiki instance has a combined use case of a public website and a restricted Intranet, it's nice to have
Piwik Matomo and / or Google Analytics for anonymous visitors to see most popular pages, time on site, etc. But for logged in users, it's not so interesting and it skews the stats.
Converted from Bootstrap 3 to 4
"Style Guide Tool" renamed to "Theme Customizer" and converted to Bootstrap 4
The Tikipedia theme was added to the package following user requests. It was evaluated that there is no license incompatibility issue.
The code of the FiveAliveHS ("Happy Scroll") that was added earlier replaced the FiveAlive theme code, so in effect the FiveAlive theme was revamped. The two-color site header background style is now implemented as child theme options. Alternative child themes for each color have solid-color (gradient) backgrounds for easier handling of color contrast between the site logo/title color and background.
Several themes were removed from the package because of dated or quirky appearance or close similarity to other themes. These themes may be provided as aftermarket installs on request.
- Starting with Wiki Pages, Tiki objects now can have maintainers, an update frequency and a freshness, i.e., how long ago it has been updated. Then, when an object becomes too old relative to its update frequency, Tiki will send emails to the maintainers reminding about the need to update it (console.php objects:notify-maintainers)
- See: https://dev.tiki.org/Object-maintainers-and-freshness
- Currency Amount Tracker Field now supports multi-currency and exchange rates.
http://sourceforge.net/p/tikiwiki/code/66325 (also backported to 18.x)
This feature can be enabled per tracker and permits to add a comment when saving an edit for a tracker item.
See Save and Comment
- ItemsList tracker fields now optionally offer an "Add new item" button and/or an edit and/or a delete icon where the user has those permissions. This allows for dealing with "children items" when you are viewing or editing the "parent item" (1 parent : N children)
- See: https://dev.tiki.org/item7206-Make-ItemsList-Tracker-Fields-Editable
- Optional new (experimental) feature to allow changes to tracker forms depending on field contents
- See: https://dev.tiki.org/item7207-Add-Conditional-Actions-for-Tracker-Fields
- Documentation coming soon here Tracker Field Rules
- https://tiki.org/forumthread66854 has been addressed in https://sourceforge.net/p/tikiwiki/code/67620
Multiple minor enhancements to the Webmail (Cypht integration). The quality is somewhere between Alpha and Beta. It is in active development and you can expect improvements every few weeks in the 21.x branch.
Display "Error" (warning) alert on wiki pages with duplicate alias wiki links (e.g.
(alias(FooBar2))). When the same alias is used in 2 or more wiki pages, links using that alias do not work properly.
Delivered to trunk: https://sourceforge.net/p/tikiwiki/code/70073
We've added support to use `@username` mentions in wiki pages. To enable mentions please enable the following preferences:
- Tagging users
- User mention notifications
When a user is mentioned, and his 'personal information' is visible to public, a link is displayed and on hover a popup with his 'information' is displayed.
As a user, to 'enable' the personal information popup, follow this steps:
Control Panel > User Settings Button > User Settings Tab > User preferences screen => Check (This will display the "Personal Information" tab on "User Preferences" pages. In it, there is a dropdown that should be set to "public".
New or enhanced.
Enhanced. See Button. You can now display an icon without label (text).
New. You can use it to set up your webmail account through Cypht.
New. It allows to produce and easily edit Gantt chart diagrams based on data in a tracker.
New. Enables page layout configuration such as removing the page footer, having full-width page section backgrounds, etc. Useful for making a splash page that looks radically different from the other site pages.
Ennhanced. Added new params to allow table expansion, coint number of items or proovide title and subtitles to the table with the results.
Ennhanced. Added in
tracker_item_modify the ability to add/remove items. This is useful for multivalue fields like User Selector, Category, Relation, Freetags, etc.
Ennhanced. Added new params to allow selecting different open layers provider and clustering of mapped features.
The plugin Multilike as two new parameter to change the icon used (selected and non-selected) for the plugin.
Enhanced. Added PluginActivityStream as a data source.
Enhanced. Part of 1.9 above.
New. Advanced plugin to add a slide in a slideshow with different background colors, background video, transition and other settings.
New. A carousel/rotator/slideshow that supports images and other content. Basically a replacement for other similar plugins that are no longer supported or are less advanced.
Enhanced. Some usability improvements have been made to facilitate new users to join the edition of a page currently being editted by another user which started the collaborative session.
Enhanced. You can now display items as resources in a continuous view for the whole year, of display items in event-list views (day, week, month, year). You can also use a new parameter
eventOverlap which will allow you to forbid (when set to
n) moving or extending events through this plugin if they would overlap the time frames of two items associated with the same resource (a common use case in booking management systems: the same physical resource can't be booked several times in the same or overlapping time frames).
noflipflop now defaults to 'y'
New. Enables embedding an XMPP chatroom in a wiki page.
- Date-based aggregations
Delivered to trunk: https://sourceforge.net/p/tikiwiki/code/70075
Now when elasticsearch is the default engine, a new checkbox is displayed allowing to use MySQL as a search index fallback in case of Elasticsearch failure.
If enabled, when the index rebuild process occurs both indexes (Elastic + MySQL) are indexed (with objects and preferences). The fallback rebuild status is visible both in UI and CLI after running index rebuild.
- Massively improved Openfire-Converse-Tiki interoperability.
- Upgraded to Converse 4.x which now uses Bootstrap 4 like Tiki, and thus, it will be easier to provide a consistent user experience. See also PluginXMPP
Also, see the standard information about Upgrades in Tiki.
Since version 19.x, Tiki uses utf8mb4 storage and there is an upgrade script built in which will do this automatically for you when the database it updated. However if, for some reason, your database (as opposed ot the tables within it) is set to use utf8mb4 already, many of the old upgrade patches will fail. To avoid this make sure the database is set to use utf8 only.
- Most dependencies were upgraded to latest version: Composer. Some notable ones:
- Smarty was upgraded. We had been stuck on v3.1.21 for a long time due to template inheritance issues, but the current release is v3.1.32 and we need this for php7.1+ support: done in https://sourceforge.net/p/tikiwiki/code/66842/
- mPDF 7.1
http://sourceforge.net/p/tikiwiki/code/65966 (also backported to 18.x)
This experiment never got to viability
As of Tiki 19, Mods are completely obsolete. All mods-related code has been removed from Tiki. Details: https://tiki.org/forumthread67983-About-Tiki-Packages-in-Tiki-18-0-LTS-and-why-I-support-this-project-And-mods-tiki-org-can-now-be-scheduled-for-retirement
- This never worked, and was duplicating another feature. One of Tiki's strengths is that we converge all energies on a common functionality. This experiment had some interesting aspects but it was not viable. All the details here: https://tiki.org/forumthread67333
PDF viewing will now be done with PDF.js viewer instead
- PluginXMPP replaces it
Was part of the Report System described above.
In the Look and Feel admin options, two layout templates ("Wider side columns" and "Fixed top navbar 1") were removed because they were very similar to other layout templates.
Mail notifications when wiki pages are edited are mostly broken in Tiki 19.0.(fixed for 19.1)
- Bootstrap Tour broken, needs library update. See item6677
- LDAP authentication to the AD is broken in Tiki 19. See https://dev.tiki.org/item7050-LDAP-authentication-to-AD-broken
No pages link to Tiki21from18
Alias names for this page: