Beiträge von Henning

    Release: QUIQQER 1.2

    Brilliant Brumby liefert coole neue Features

    neue Template-Einstellungen, optimierte Caching Performance zur schnellerer Darstellung eurer Seiten, bessere Übersicht der Rechte in der CLI und SEO-Optimierung.


    https://www.quiqqer.de/blog/QU…efert-coole-neue-Features


    QUIQQER 1.2: Brilliant Brumby liefert coole neue Features

    Flexibel, einfach, effizient – das ist unser Anspruch an QUIQQER. Darauf ist auch die neue Version 1.2 Brilliant Brumby ausgelegt. Sie bringt neue Template-Einstellungen, optimierte Caching Performance zur schnellerer Darstellung eurer Seiten, bessere Übersicht der Rechte in der CLI und SEO-Optimierung.

    QUIQQER unterstützt jetzt Bootstrap, jQuery, Angular und andere Frameworks

    Ihr wollt Bootstrap, jQuery, Angular oder andere Frameworks nutzen? Mit QUIQQER 1.2 ist das ab sofort kein Problem mehr. Wir haben die neue Version mit einer Kompatibilitätsschicht ausgestattet. So könnt ihr alle QUI Controls auch mit anderen Frameworks nutzen.

    Templates, die mit Bootstrap umgesetzt sind, könnt ihr jetzt auf QUIQQER migrieren. Das gilt auch für Angular, Vue.js, Polymeroder jQuery. Das spart euch jede Menge Zeit und Arbeit. Nehmt euer Projekt einfach mit zu QUIQQER.




    Seiten- und Projekteinstellungen noch schneller speichern

    Eure Einstellungen speichert ihr in QUIQQER 1.2 jetzt blitzschnell. Wir haben die Caching-Performance komplett überprüft und das Datei-Caching optimiert. Jetzt gibt es kaum noch Verzögerungen beim Speichern. Auch Projekte mit sehr vielen Seiten (> 10.000) sind kein Problem mehr.


    QUIQQER 1.2 unterstützt Redis als Caching Server

    Seiten mit langen Ladezeiten nerven deine Nutzer. Um dein Angebot noch schneller zu machen, unterstützt die neue QUIQQER Version Redis als Caching Server bereits im QUIQQER-Core.

    Redis ist ein Open Source Datenbankserver (BSD lizenziert) und ist eine In-Memory-Datenbank mit einer einfachen key value store Datenbankstruktur. Redis gehört zur Familie der NoSQL-Datenbanken (ist also nicht relational) welcher als Datenbank, Cache und Message-Broker verwendet werden kann. Alle Infos dazu findest du hier: redis.io.



    Neues Permissions-Tool auf CLI Ebene bringt mehr Übersicht für Systemadministratoren

    Alle Systemadmins bekommen mit der neuen QUIQQER Version nochmals eine bessere Übersicht zu ihren Rechten. Außerdem habt ihr nun schnell alle QUIQQER-Permissions auf einen Blick. Zusätzlich haben wir eine Suchfunktion in die Permissions eingebaut.

    Die Rechte von Gruppen und Benutzern könnt ihr in einer aufbereiteten Ansicht anzeigen lassen. Das gleiche gilt auch für einzelne Zugriffsrechte.

    Mit QUIQQER Brilliant Brumby gelingt die Verwaltung deiner Gruppen- und Benutzerrechte einfach, schnell, übersichtlich und ganz nach den Bedürfnissen deines Projektes.



    SEO-Optimierung: QUIQQER informiert Google über lokalisierte Versionen deiner Seite

    Damit dein QUIQQER-Projekt nicht nur toll ausschaut und schnell läuft, sondern auch immer gefunden wird, liefern wir mit der neuen Version eine Änderung zur SEO-Optimierung. Die ist besonders für alle interessant, die ein Projekt in mehreren Sprachen pflegen, etwa einen Online-Shop, ein Informationsportal oder andere Services. Schließlich sollen deine Leser oder Kunden direkt zu den für ihre Region relevanten Informationen kommen.

    Dafür sorgt die Meta-Angabe „hreflang“. Diese wird von den Suchmaschinen genutzt um den Suchenden das Ergebnis in der passenden Sprache anzuzeigen. In QUIQQER 1.2 verwendet jede Seite diese nun auch für sich selbst und nicht nur für anderssprachige Seiten.

    Solche Self-Referentials wertet Google im Ranking nicht ab. Deshalb haben wir sie direkt in QUIQQER integriert. Denn wie immer gilt: Je schneller deine Nutzer zu den für sie relevanten Informationen kommen, desto lieber kommen sie wieder.



    QUIQQER von mysql auf mysql strict

    Wenn kein Fehler bei einem Setup vorkommt, kannst du diesen Post ignorieren und alles läuft einwandfrei.


    Der Wechsel von mysql und mysql strict lässt sich leider nicht ganz automatisiert lösen.

    Daher gibt es hier ein kleinen Ablauf.

    Folgender Fehler kann beim Wechsel aufkommen:

    Zitat

    Something went wrong::SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00' for column 'lastexec' at row 2

    If the setup didn't worked properly, please test the following command for the update:


    Dies passiert wenn ein Cron Job existiert, welcher noch nicht ausgeführt wurde. Dieser Cron Job besitzt nun das Ausführungsdatum 0000-00-00 00:00:00, welches in mysql strict nicht erlaubt ist.

    Das Problem ist, solange dieser Eintrag existiert kann die Datenbanktabelle nicht angepasst werden.

    Lösung ist:

    Entweder löscht du den Cron Job, welcher noch nich ausgeführt wurde, oder setzt händisch in der Datenbanktabelle `cron` die lastexec Einträge auf ein altes Datum (1980-01-01 00:00:00).

    Wenn dies gemacht wurde, kann folgender Befehl noch zusätzlich ausgeführt werden:


    SQL
    1. ALTER TABLE `cron` CHANGE `active` `active` TINYINT( 1 ) NOT NULL,
    2. CHANGE `title` `title` VARCHAR( 60 ) NOT NULL ,
    3. CHANGE `min` `min` VARCHAR( 128 ) NOT NULL ,
    4. CHANGE `hour` `hour` VARCHAR( 128 ) NOT NULL ,
    5. CHANGE `day` `day` VARCHAR( 128 ) NOT NULL ,
    6. CHANGE `month` `month` VARCHAR( 128 ) NOT NULL ,
    7. CHANGE `dayOfWeek` `dayOfWeek` VARCHAR( 128 ) NOT NULL ,
    8. CHANGE `exec` `exec` TEXT NOT NULL ,
    9. CHANGE `params` `params` TEXT NOT NULL ,
    10. CHANGE `lastexec` `lastexec` DATETIME NULL DEFAULT NULL 


    Danach musst du das Setup von QUIQQER einmal ausführen und die Tabellen werden an MySQL Strict angepasst.


    Shell-Script
    1. php quiqqer.php setup

    Ich hoffe du hast an das bind gedacht ^^


    Also, das Problem ist behoben. Waren nun mehrere Sachen.

    Einmal der Editor wurde in die Settings geladen, dafür ist der Editor nicht geeignet. Das wurde nun unterbunden und der Editor muss immer in einer neuen Panel Kategorie angezeigt werden.


    Zusätzlich haben wir glaube ich die Toolbars von ihm geleert. Er hat WYSIWYG Module geladen die aber nicht aktiviert waren :-)

    Wenn es sich um Datenobjekte handelt sollte dies kein Problem sein.

    Bei richtig Instanziierten Objekten ist das so eine Sache. hier musst du auch aufpassen ob es Sinn macht solche Objekte mit serialize / unserialize zu Cachen.


    Die Sache ist, die Klasse sollte dann schon __wake und __sleep als Magic Methode mitbringen, es könnte dann sein dass das nicht ganz so funktioniert wie du das möchtest. Zusätzlich bin ich mir nicht sicher was serialize mit inharitance Objekten macht (Also Objekte im Objekt). Wenn das dann durch serialisiert wird, wird es plötzlich recht viel ... das ganze muss dann auch interpretiert werden. Hier solltest du dann echt auf die Performance achten.


    Wenn stark serialisiert wird und das dann im RAM liegt und du kräftig Besucher hast, wirst du wahrscheinlich deine Last runter bringen.

    Dein Bottleneck wird aber meist bei so Sachen sein wie

    • DNS Auflösung / Anfragen zu anderen Rechnern
    • Datenbank Anfragen

    Hier lassen sich bessere Caching-Methoden anwenden, nen Query Cache macht da meist einiges aus. Also was ich sagen will, wenn du direkt an deinem Bottleneck ein minimalen Cache einsetzt, anstatt Mega Objekte zu cachen, hast du weniger Stress :-) Also wenn du richtige Klassen cachen möchtest solltest du mehrmals drüber nachdenken ob dir der Aufwand es wert ist.

    Also ich hab das bei mir gerade getestet. Das funktioniert einwandfrei. Ich habe sogar dein Schnipsel direkt bei mir einmal eingebaut. Der Editor wurde geladen.

    XML: site.xml
    1. <input conf="event.settings.1234" data-qui="controls/editors/Editor">
    2. <description>
    3. <locale group="quiqqer/calendar" var="sitetypes.event.settings.details"/>
    4. </description>
    5. </input>




    Das wäre die richtige Vorgehensweise. Du redest aber einmal von settings.xml und einmal von site.xml, also in beiden habe ich es getestet und der Editor wurde ohne Probleme geladen.

    Wie alt ist denn deine QUIQQER Installation?

    Probier mal bitte


    Code
    1. <input conf="quiqqerApp.settings.splash" class="media-image" data-qui-options-selectable_types="" data-qui-options-selectable_mimetypes="">


    Es gibt zwei Optionen bei dem Input.

    • selectable_types
    • selectable_mimetypes

    Ich weis nun nicht genau ob das in dem XML weitergereicht wird. Sollte theoretisch.


    selectable_types


    Kannst du die verschiedenen File Typen angeben, Also file, folder, image


    selectable_mimetypes


    Kannst du die verschiedenen mime types halt angeben. Sowas wie image/png oder image/jpg


    Kann aber auch sein das ich dir da ein Fix bauen muss, da eigentlich ein Array übergeben werden soll. Müsste ich aber nach schauen ob komma seperiert oder JSON Format interpretiert wird.

    Wenns nicht geht, sag bitte bescheid, dann bau ich dir nen Fix.