Skip to content

5.0.0

Compare
Choose a tag to compare
@Schlaefer Schlaefer released this 10 Jun 10:06
· 251 commits to master since this release

What's new

Hello!

Saito 5 is big rewrite of major parts of the forum. 90% of the work took place in late 2015, but I burned out at the end, so it didn't make it out of the door. The remaining 9.9% were done in the first half of 2018. 2019 sees the release – finally.

On the backend the update from CakePHP 2.x to CakePHP 3.x is the most noteworthy, which was a considerable effort.

The frontend-stack moved from bower, RequireJS, Marionette 1.x and Javascript over to yarn, webpack, Marionette 3.x with parts starting to migrate to Typescript. The UI is based on Bootstrap now, which should offer a more accessible theming-environment.

Overall there's a stronger separation between frontend and backend. The major theme is that the PHP-backend is going to provide a new JSON based API with JWT authentication which is accessed by a independent frontend JS application. The rewritten image-uploader and bookmarks features being the first incarnations of this transition.

Future-proving the code-base was the main goal, but there are also feature changes.

Users are able to set an avatar image now. The layout is better optimised for mobile devices. Category-access-rights are more fine grained. The image-uploader is rewritten and improved (auto-rotate images by EXIF-metadata, remove medata, compress images, thumbnails on index page). The posting form is a custom implementation, which allows more flexibility (sub-paragraph citations, better dialogs for inserting content and esp. for smilies). Embedding of rich 3rd-party content doesn't rely on an external provider anymore.

On the other hand less popular features didn't made the transition: Shoutbox, community-map, separate mobile-version, email-notifications on answers, admin-stats, …

Update

Migrating from 4.x

Saito 5.0.0 requires PHP 7.1 but is able to run on the same DB as Saito 4.10 (meaning that the DB updates for Saito 5 don't break 4.10). This allows you to move from PHP 5 to 7 with 4.10 and gently switch to Saito 5.

Saito 5 includes an automated database updater, so no more manually updating the DB with raw SQL commands. Yeah! But ... I can only hope that you applied the manual steps of the past by the letter. I also assume that your database structure is in the same state as a vanilla 4.10 installation. The automated updater may fail if it isn't ...

Please do a database-backup before updating!This is not a drill!

The database connection is set in config/app.php. Enter your existing security salt there too.

There's no support for table prefixes anymore. If prefixes were used in the past rename the tables to an unprefixed version.

Theming

The new default theme "Bota" replaces "Paz". It is implemented as a CakePHP 3 theme plugin and lives in plugins/Bota. The UI is implemented as Bootstrap 4 theme.

To start your own theme I recommend using SASS and referencing and customizing the default theme.

// e.g. in "plugins/YourTheme/webroot/css/src/theme.scss"
// set YourTheme in config/saito_config.php

//// Change Bootstrap variables

$body-color: #222;
...

//// Include the main theme which will pick up the Bootstrap variable values

@import "../../../../../plugins/Bota/webroot/css/src/theme";

//// Additional customizations tweaking the default theme

@import "_your_customizations.scss";

body {
  // more customizations
}

Otherwise you have to bring your own Bootstrap-theme and layout additional forum properties from scratch.