Installation

Voraussetzungen

Als Ausgangspunkt der Installation dient eine Rails-Anwendung in der Version 4.1. Dabei kann es sich um eine RailsConnector-Applikation oder eine reine Rails-Applikation handeln. Um wie vorgesehen zu funktionieren, benötigt das Fiona-7-Gem zwingend:

  • Rails in der Version 4.1
  • jQuery und jQuery-ujs
  • CMS Fiona, mit freigeschaltetem XML-Zugang, railsifiziert
  • MySQL-Datenbank
  • ImageMagick
Optional kann der FionaConnector eingesetzt werden.

Schritt 1: Das Gem installieren

Tragen Sie das Fiona-7-Gem in die Datei „Gemfile“ im Hauptverzeichnis der Applikation ein:

gem 'infopark_fiona7'

Das Fiona-7-Gem wird wie der RailsConnector (jetzt auch FionaConnector) auf RubyGems.org veröffentlicht. Daher kann es mit dem folgenden Aufruf installiert werden:

bundle install

Die erforderlichen Komponenten für die Kompatibilität mit Scrivito werden automatisch berücksichtigt.

In den folgenden Schritten wird die Applikation für die Zusammenarbeit mit dem Fiona-7-Gem konfiguriert.

Schritt 2: CSS und JavaScript inkludieren

Um die volle Funktionalität des Gems freizuschalten, müssen in der Applikation CSS- und JavaScript-Komponenten inkludiert werden.

CSS-Komponenten

Diese Anleitung geht davon aus, dass in der Datei „application.css“ weder SCSS oder LESS, noch eine andere Lösung verwendet wurde. Erweitern Sie die Datei „app/assets/stylesheets/application.css“ um die folgende Zeile, idealerweise oberhalb oder unterhalb von „*= require_self“:

*= require fiona7

JavaScript-Komponenten

Diese Anleitung geht ferner davon aus, dass in der Datei „application.js“ keine Erweiterung wie CoffeeScript o.ä. verwendet wurde. Erweitern Sie die Datei „app/assets/javascripts/application.js“ um die folgende Zeile:

//= require fiona7

Diese Zeile muss zwingend unmittelbar hinter den folgenden Zeilen stehen:

//= require jquery
//= require jquery_ujs

Schritt 3: Basisklasse implementieren

Um mit Fiona 7 in Ihrer Applikation arbeiten zu können, benötigen Sie eine Implementation der Klasse „Obj“. Legen Sie hierfür das Model „Obj“, das von „RailsConnector::BasicObj“ abgeleitet ist, in der Datei „app/models/obj.rb“ an:

class Obj < RailsConnector::BasicObj
end

Schritt 4: Zugänge konfigurieren

Für eine Applikation mit dem Fiona-7-Gem müssen zwei Arten von Zugängen eingerichtet werden:

  • Direkter Zugang zu der MySQL-Datenbank, die an das CMS angebunden ist
  • XML-Schnittstelle des CMS

Die MySQL-Konfiguration ist vollkommen identisch zu der beim RailsConnector (oder FionaConnector), d.h. der „cms:“-Eintrag in der Datei „config/database.yml“ muss derselbe sein.

Geben Sie die Zugangsdaten für die XML-Schnittstelle in der Datei „config/initializers/fiona7.rb“ an. Das folgende Beispiel illustriert die Konfigurationswerte und deren Format:

Fiona7.configure do |config|        # 1
  config.instance = 'playland'      # 2
  config.host = '33.33.33.10'       # 3
  config.port = 7001                # 4
  config.username = 'root'          # 5
  config.secret = 'MYSECRET'        # 6
  config.mode = :legacy             # 7
end

Zeile 2: Der Instanzname, in der Regel ist dies „default“.

Zeile 3: Der Hostname oder die IP-Adresse des CMS Servers.

Zeile 4: Die Portnummer des XML-Zuganges; siehe die CMS-Datei „config/server.xml“.

Zeile 5: Das Login eines Benutzers mit dem Recht „permissionGlobalRoot“.

Zeile 6: Das „secret“ der Instanz; siehe die CMS-Datei „config/server.xml“.

Zeile 7: Der Modus der Applikation, „:legacy“ oder „:standalone"“. Erläuterungen zu dieser Einstellung finden Sie im Abschnitt Zwei Betriebsarten.

Achtung! Mit dem Login unter „username“ und dem angegebenen „secret“ wird man als CMS-Benutzer mit root-Rechten authentifiziert. Aus diesem Grund sollten diese Zugangsdaten niemals veröffentlicht (oder in ein Repository eingecheckt) werden. Wir empfehlen, die Zugangsdaten mittels Rails Secrets zu persistieren. Ferner sollte der Zugang zur XML-Schnittstelle mit einer Firewall auf die bekannten IP-Adressen beschränkt werden.

Schritt 5: Benutzeroberfläche freischalten

Schalten Sie die Benutzeroberfläche frei, indem Sie in den HEAD-Abschnitt des Layouts

<%= fiona7_head_tags %>

sowie in den BODY-Abschnitt

<%= fiona7_body_tags %>

eintragen.

Schritt 6: Link zur Anmeldung mitteilen

Um in der Vorschau arbeiten zu können, ist es erforderlich, sich anzumelden. Die Anmeldemaske ist voreingestellt versteckt und muss erst freigeschaltet werden. Fügen Sie hierzu mit der folgenden Zeile den Button zur Anmeldung an einer geeigneten Stelle ins Layout ein:

<%= fiona7_login_button %>

Schritt 7: Die CMS-Instanz initialisieren

Bevor Sie eine Anwendung mit Fiona 7 entwickeln können, ist es erforderlich, jede CMS-Instanz mit der folgenden Anweisung zu initialisieren:

bundle exec rake fiona7:initialize

Dieser Befehl überprüft die Zugänge, Strukturen und Einstellungen des CMS auf Kompatibilität mit Fiona 7 und passt sie bei Bedarf an.

Anschließend kann die Site hochgefahren und aufgerufen werden. Nach der Anmeldung erscheinen die Marker und sämtliche weiteren Bearbeitungselemente.