Rails 4.1 is a requirement for using the Fiona 7 gem. We recommend to first update Rails to version 4.1 for applications still using older Rails versions (the FionaConnector supports Rails 4.2 from version 6.10.0.beta1) and subsequently start testing Fiona 7.
The aspects that should be taken care of when upgrading to Rails 4.1 are documented in detail in A Guide for Upgrading Ruby on Rails. The FionaConnector requires no extra steps in this process.
Yes. Since the Fiona 7 gem is based on the standard mechanisms of Rails, template libraries other than “.erb” can be used in the views.
The root account of the application is used for the following tasks:
You can have control attributes displayed and make them editable on the details pages of the corresponding class.
Objects to which no path is assigned during creation are placed directly underneath the root object.
The appearance of the login page can easily be changed. This page is made up of two components, “app/views/layouts/fiona7_login_page_layout.html.erb” (Layout) and “app/views/fiona7_login_page/index.html” (the page itself). These files can be overridden simply by creating them in the application.
To change the logic of the login page, override the “Fiona7LoginPageController.” The default object representing the login page is created by the initialization script, “/_global/login_page.” You can move this object without running into problems. Should you require further login pages (e.g. to support additional languages), the “Fiona7LoginPageController” needs to be adapted accordingly.
The 0.30 release initially doesn't take account of read permissions to make moving from RailsConnector to Fiona 7 easier.
To prevent users from accessing pages they are not permitted to access, it is sufficient to add the following code to the CmsController:
before_action :require_read_permission def require_read_permission return @obj.permission.read? end
This prevents the blocked pages from being opened. However, these pages can still be seen in lists, for example.
Every page has a page menu that includes an item for directly publishing it. Publishing a page requires the user to have the “permissionWrite” permission for it.
For best compatibility with Scrivito, Fiona 7 also lets you publish a working copy identified as “rtc.” However, this operation is not meant to be part of the regular workflow, so “permissionGlobalRoot" is required to perform it.
Only objects of the “publication” type may have subobjects. If someone tries to add widgets to an object of the “document” type, it won't be posible to store them underneath this object. In this case, the global “/_widgets” folder is used as the storage location: Underneath “/_widgets” a folder is added whose name equals the ID of the page object. In this folder the widgets of the page are stored.
The same applies analogously to uploaded content.
It is no longer necessary to distinguish between the live and preview mode. The live mode is optional and can still be used where appropriate.
Since logging in to the website causes data to be exchanged with the CMS via the XML interface, the log-in page should be blocked in the live environment.
Unfortunately, existing images cannot be automatically reused in Fiona 7. If, for example, you have an image library you would like to use with Fiona 7, please contact us. We'll be happy to help you.
Usually, RailsConnector applications are operated using a prefix for the preview. If, for example, the name of the instance is “internet,” the web server should deliver the Rails application using the “/internet” prefix.
Version 0.30 doesn't fully support operating an application under a prefix (it's planned for version 0.40). For this reason, restrictions apply to using the preview with existing applications connected to Fiona 7. However, there is a workaround if just a single Rails application is attached to the web server. If, for example, the application is operated under the “/internet” prefix on the “192.168.1.101” host, the Fiona 7 preview becomes available after adding the following entry at the end of the Apache web server configuration:
ProxyPass / http://192.168.1.101/internet