Tiki21from18

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

About getting source code

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

1. New Features and Improvements

Roberto Kirschbaum wrote:
Big thanks to Xorti for the --use-git option in 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.

1.1. Admin panel

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

1.2. Bootstrap

This is the most far reaching upgrade in Tiki19: Moved from Bootstrap 3 to 4.
See https://themes.tiki.org/Bootstrap-3-to-4-transition

1.3. Browser compatibility

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.

1.4. Calendar

1.4.1. Fullcalendar updated and Scheduler via packages

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!
http://sourceforge.net/p/tikiwiki/code/66816

1.4.2. Calendar - CalDAV support

1.5. Console

New actions added to console.php:

  • file:check now 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)
  • tracker:export added
  • generate/warmup caches, and in TRIM as well


See Console

1.6. Contacts - CardDAV support

Feature was improved: https://sourceforge.net/p/tikiwiki/code/71556

1.8. Custom admin panels

1.9. Diagrams

  • Diagrams have seen multiple improvements since their introduction in Tiki19


1.10. Elasticsearch

Added support for Elasticsearch 6.x while maintaining support for 2.x and 5.x see Elasticsearch requirements.

1.11. Email threading

Add email threading capabilities for tiki email notifications in Forums and Blog Post comments: http://sourceforge.net/p/tikiwiki/code/65982

1.13. Federation

Sync Dev-Prod Servers Tiki instances - admin tool to show differences between configuration, trackers, fields and wiki pages
http://sourceforge.net/p/tikiwiki/code/67442

1.14. Forums

Better URLs: http://sourceforge.net/p/tikiwiki/code/66574

  • Major revamp to make it easier to add new features

1.16. File previews

1.17. Gantt charts

1.18. H5P improvements

Some improvements were added to H5P. For instance, the ability to directly fetch presentations from the remote H5Phub site:

Click to expand
Click to expand


See: H5P

Add preference to convert tiki instance absolute URLs with relative URLs in content: URL conversion from absolute to relative

1.20. LDAP / Active Directory support

1.21. Map / Location / OpenStreetMap

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:

1.21.1. Clustered Features (Map)

 Open Layer Terminology
"feature" is what OpenLayers calls a "thing on a map"

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)
Exemple: https://openlayers.org/en/latest/examples/cluster.html

1.22. MathJax


1.23. MediaWiki importer

Add support to import information in the MediaWiki format 0.6 to 0.10
https://sourceforge.net/p/tikiwiki/code/65119
MediaWiki Importer

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 .

1.25. Minification

Make the filenames of minified CSS files be based on the contents of all the files, not just the filenames, so that when anything changes within a file, i.e. after an upgrade or bug fix, browsers will automatically get the new version of the code. Since this uses a server-side cache which is not validated, client-side cache will only be forced after the Tiki server's cache is cleared. This had already been done for JavaScript in Tiki 18.x


See Minify CSS

1.26. Modules

New or enhanced.

1.26.1. Site logo module

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.

1.26.2. Websearch module

To perform a search by choosing from multiple search engines.

1.26.3. Module to switch admin language

1.26.4. Module to enable quick admin bar

Top Admin Bar works on the top position and gives a mini control panel to Tiki Admins.

1.26.5. Module permissions

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)

See Module permissions

1.27. Multilingual

1.28. Newsletter

1.29. OCR Indexing

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.30. OAuth2

Add OAuth2 support via https://oauth2.thephpleague.com/
See: OAuth

1.31. Performance

1.31.1. Add new console command to generate/warmup caches, and in TRIM as well

http://sourceforge.net/p/tikiwiki/code/66590
http://sourceforge.net/p/tikiwiki/code/66591

1.31.2. Allow image lazy loading

Using https://github.com/ApoorvSaxena/lozad.js
https://sourceforge.net/p/tikiwiki/code/67376

1.32. PDF

1.32.1. mPDF updated

1.32.2. PDF.js

For PDF viewing, we will start using code directly from Mozilla's PDF.js, and installable via Packages -> PDF.js viewer
http://sourceforge.net/p/tikiwiki/code/66297
http://sourceforge.net/p/tikiwiki/code/66207

1.33. Permissions

1.33.1. Module to help site admin to know who has which permission on each object

1.33.2. Mini-revamp

This section needs cleanup.
  • 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.

1.33.3. List ordering

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.

1.34. Perspectives - sticky


1.35. Profiles

http://sourceforge.net/p/tikiwiki/code/66243 (backported to 18.x)

1.36. Progressive Web App

1.37. Roles

1.38. Scheduler

1.39. Sessions

1.40. Share

https://sourceforge.net/p/tikiwiki/code/66939

1.41. Slideshow revamped

1.42. Spam protection improvements

  • 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

http://sourceforge.net/p/tikiwiki/code/66919
http://sourceforge.net/p/tikiwiki/code/66916
http://sourceforge.net/p/tikiwiki/code/66503

1.43. Stats

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.
http://sourceforge.net/p/tikiwiki/code/65976

1.44. Templated Groups

1.45. Themes

Converted from Bootstrap 3 to 4

1.45.1. Theme Customizer

"Style Guide Tool" renamed to "Theme Customizer" and converted to Bootstrap 4

1.45.2. Theme installer

Experimental: https://sourceforge.net/p/tikiwiki/code/67603

1.45.3. Tikipedia theme - new

The Tikipedia theme was added to the package following user requests. It was evaluated that there is no license incompatibility issue.

Screenshot 2018 09 25 Demo Zukathemes Com Tikipedia

1.45.4. FiveAlive theme - revamp

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.

1.45.5. Removal of outdated themes

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.

1.46. Tiki Objects: maintainers and freshness


See Object Maintainers and Freshness

1.47. Trackers

1.47.1. Multi-currency

1.47.2. Fix tracker change email notification to translate the status content to watcher language

http://sourceforge.net/p/tikiwiki/code/66325 (also backported to 18.x)

1.47.3. Create a tracker and tabular format from csv file import

http://sourceforge.net/p/tikiwiki/code/66772

1.47.4. Save and comment

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

1.47.5. PluginTrackerlist can be converted to PluginList

http://sourceforge.net/p/tikiwiki/code/65790
See: PluginTrackerList To PluginList Converter

1.47.6. ItemsList fields now editable

  • 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

1.47.7. Field Rules

1.48. Two-factor authentication support

1.49. URL Shortener

1.50. URL conversion from absolute to relative

URL conversion from absolute to relative

1.51. utf8mb4

1.52. Webmail

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.

1.53. Wiki Syntax

1.53.1. Page Alias

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.

Related commit(s):

1.53.2. Support for @username mentions with notification


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".

1.54. Wiki Plugins

New or enhanced.

1.54.1. Plugin Button

Enhanced. See Button. You can now display an icon without label (text).

1.54.2. Plugin Cypht (for new webmail)

New. You can use it to set up your webmail account through Cypht.

See PluginCypht.

1.54.3. Plugin Diagram

New. See PluginDiagram. PluginDiagram integrates mxGraph (An open source JavaScript diagramming component, started in 2005, that works on all major browsers, including touch devices), to provide a service like draw.io but that you can install on your own server.

1.54.4. Plugin Gantt Chart

New. It allows to produce and easily edit Gantt chart diagrams based on data in a tracker.

See PluginGanttChart

1.54.5. Plugin Layout

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.

See PluginLayout

1.54.6. Plugin List

Ennhanced. Added new params to allow table expansion, coint number of items or proovide title and subtitles to the table with the results.

See PluginList and this specific documentation page secction

1.54.7. Plugin ListExecute

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.

See PluginListExecute

1.54.8. Plugin Map

Ennhanced. Added new params to allow selecting different open layers provider and clustering of mapped features.

Image


See PluginMap

 

1.54.9. Plugin Markdown

New. Instead of Tiki's wiki-syntax you can use Markdown syntax in it.
See PluginMarkdown.

1.54.10. Plugin Multilike

The plugin Multilike as two new parameter to change the icon used (selected and non-selected) for the plugin.

See Multilike and PluginMultilike

1.54.11. Plugin PivotTable

Enhanced. Added PluginActivityStream as a data source.

See PluginPivotTable

1.54.12. Plugin Slideshow

Enhanced. Part of 1.9 above.

See PluginSlideshow

1.54.13. Plugin SlideshowSlide

New. Advanced plugin to add a slide in a slideshow with different background colors, background video, transition and other settings.

See PluginSlideshowSlide

1.54.14. Plugin Swiper

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.

See PluginSwiper

1.54.15. Plugin Together

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.

https://sourceforge.net/p/tikiwiki/code/67120
https://sourceforge.net/p/tikiwiki/code/67701
https://sourceforge.net/p/tikiwiki/code/67025
https://sourceforge.net/p/tikiwiki/code/66840

See PluginTogether

1.54.16. Plugin TrackerCalendar

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).

Click to expand
Click to expand


See: PluginTrackerCalendar

1.54.17. Plugin TrackerFilter

Ennhanced. Parameter noflipflop now defaults to 'y'

1.54.18. Plugin XMPP

New. Enables embedding an XMPP chatroom in a wiki page.

See PluginXMPP.

1.55.1. Date-based aggregations (a.k.a. facets)

1.55.2. Unified Index: fall back if Elasticsearch is unaccessible

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.

1.56. System Configuration

1.57. TRIM / Tiki Manager

The "Tiki Remote Instance Manager (TRIM)" will go into maintenance mode, and the code will be forked and revamped to become its replacement, now known as the "Tiki Manager".


1.58. Vue.js support

1.59. Webmail

1.60. WebDAV

1.61. XMPP

  • 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

2. General upgrade notes

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.

3. Dependencies

  • 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

4. Cleanups

http://sourceforge.net/p/tikiwiki/code/66206

4.1. Convert tracker attachments to files script

http://sourceforge.net/p/tikiwiki/code/65966 (also backported to 18.x)

5. Regressions

5.1. Removals

Exact search with ElasticSearch (added in Tiki 18.3) was removed.

5.1.1. Jison

This experiment never got to viability
http://sourceforge.net/p/tikiwiki/code/66804

5.1.2. jQuery.s5

jQuery.s5 is no longer updated, so it was replaced by the Reveal.js library (which is pretty awesome!)

5.1.3. Mods

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

5.1.4. Report system (experimental)

  • 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

5.1.5. WebODF and ViewerJS

As of Tiki19, ViewerJS, which includes WebODF, will no longer be supported because no significant work has been done since 2015


PDF viewing will now be done with PDF.js viewer instead

5.1.6. Removed WikiPlugins

5.1.6.1. Plugin Jabber

5.1.6.3. Plugin Report

Was part of the Report System described above.

5.1.7. Removed layout templates

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.

5.2. Known Bugs

6. Related

Pages linking to this one

No pages link to Tiki21from18



Alias names for this page:
21from18