WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

You are not logged in.

#26 07.07.2021 10:31:16

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Hier mal eine Vorschaltseite mit Ace Editor.

Die Änderung ist minimal (eine Datei im Anhang), aber das zu generalisieren sehe ich als nicht machbar an.
Schaut euch das einfach mal an.

Diese Datei in "Admin-Verzeichnis"/pages einfach ersetzen.

Last edited by mastermind (29.07.2021 10:21:05)

Offline

#27 07.07.2021 12:26:31

stefanek
Developer

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Hallo mm,
ich schaue es mir an, aber es kann sein, dass ich erst morgen dazu komme.

Schönen Gruß,
Christian


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Offline

#28 25.08.2021 11:22:41

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Der Ace Editor ist ein Ersatz für EditArea. Er kann Syntax Highlighting, Syntax Check, Beatify, autom. einrücken, auskommentieren etc. für php, html, css, javascript und hat eine starke Community. Das Farbschema, Schriftgröße etc. kann individuell pro User und Funktion konfiguriert werden.


Habe mal 3 Funktionen geändert, bitte mal testen, ob es bei euch auch funktioniert oder etwas fehlt.

1. Droplets: die Datei "droplets.zip" entpacken und den Inhalt nach "modules" kopieren

2. Vorschaltseite: die Datei "vorschaltseite.zip" entpacken und den Inhalt nach "admin" kopieren. Wenn das Admin Verzeichnis per config geändert wurde, das entsprechende Verzeichnis verwenden.

3. CKeditor: die Datei "ckeditor.zip" entpacken und den Inhalt nach "modules" kopieren. Das ersetzt die Quellcode Bearbeitung.

Für alle 3 Funktionen ist das Modul "ace" Voraussetzung und muss vorher über die Admin Funktion installiert werden.
Bitte um Feedback, ob das bei euch funktioniert wie beschrieben.

Last edited by mastermind (25.08.2021 11:23:43)

Offline

Liked by:

florian

#29 25.08.2021 20:03:22

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Hallo mastermind,

habe deine 3 Themen zu einem zusammengelegt.

die plugin.js des CKE ace Plugins hast du die gemacht oder gibt's die als fertiger?

Damit sich keiner Wundert, die durch mastermind geänderte Datei für das Intro manipuliert das Fraggy Theme und der Inhalt des Droplet Zips verpasst dem elFinder ein Drittanbieter Design im Material Look

Offline

#30 26.08.2021 10:51:27

florian
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

@mastermind

Funktioniert. Coole Sache. Danke dafür!

Offline

#31 26.08.2021 11:20:06

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Danke für das Feedback!

Hallo colinax,

das plugin,js für den CKE hab ich gemacht, gibt es nicht im Netz (habe schon einige Plugins für ckeditor gemacht, allerdings für Version 3).

Das Droplet Zip enthält leider auch die Änderungen für den elFinder, das war ein Versehen und sollte nicht im Zip enthalten sein.

Noch eine Frage an Florian: wird das irgendwann im Release enthalten sein, oder kann das jeder nach Bedarf benutzen?

Offline

#32 26.08.2021 11:34:21

florian
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Ich wäre schon dafür, das in den Core aufzunehmen, d.h. zumindest überall dort, wo noch jetzt noch EditArea zum Einsatz kommt, zukünftig ACE zu verwenden.
Ich würde es auch sinnvoll  finden, standardmäßig das Material Theme für den elFinder auszuliefern, da die Icons dort besser erkennbar sind und sich das deutlich harmonischer in unsere BE-Themes einfügt.

Last edited by florian (26.08.2021 11:34:45)

Offline

#33 26.08.2021 16:19:26

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Könnte natürlich auch bei der Umstellung von anderen Modulen helfen, wenn das gewünscht ist.
Da ich selbst diese Module nicht benutze, müsste mir dann allerdings jemand sagen, wie ich diese testen kann.

Offline

#34 04.09.2021 15:06:39

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Hallo mastermind,

ich hab mir die Download aus #28 angesehen.


Was den elFinder angeht, den Code zur Anpassung der Höhe wurde ich gerne fix übernehmen thumb_up , wenn du nichts dagegen hast.

Das CKE Ace Plugin hat noch offene Baustellen aber die sollten keine Probleme darstellen:

  • Mehrsprachig muss vorhanden sein, soll heißen mindestens EN und DE muss es können.

  • Das Plugin muss funktionieren, ohne dass dafür ein Würgaround im Lade Skript des CKE eingebaut werden muss

  • Damit weniger Verwirrung entsteht sollte das Plugin den Platz des alten Sourcearea einnehmen.

Wenn du dir die CKE Plugins ckawesome, wbdroplets und sourcearea ansiehst. sollten die obengenannten Punkte schnell erledigt sein


Beim Ace Ace Modul selbst muss auch noch angelegt werden

  • Ist das schwarze Design das default Design?

  • So wie aktuell die User Einstellungen gespeichert werden ist es nicht ideal, wenn die Seite viele User hat entsteht schnell Chaos im Modulordner, da muss was besseres wie z.b. eine DB Abfrage her oder man lagert das Ganze in den var bzw. temp Ordner aus (wie es z.B. errorlogger oder elFinder machen)

  • Läuft ACE eigentlich auch mit jQuery 3 und jquery müsste man auch auf den WBCE internen jQuery Pfad ändern

  • Die Dateien müssten dann auch so abgesichert werden dass diese nur innerhalb von WBCE und einer angemeldeten Session funktionieren

Lg

Offline

#35 04.09.2021 17:15:34

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

elFinder: ja, bitte Höhe übernehmen

CKE Ace Plugin:
- mehrsprachig: verstehe ich
- Würgaround: welche Zeile in welchem Verzeichnis genau meinst Du da?
- den Platz von sourcearea einnehmen: verstehe ich nicht, meinst Du damit kein autonomes eigenes Fenster?

Ace Modul:
- sag mir einfach, welches Design von den vielen soll das Default sein
- würde dann die Dateien im Verzeichnis "/var/modules/ace/" ablegen - gibt es dafür vordefinierte Konstanten?
- jquery 3 sollte kein Problem sein: gibt es für den Pfad eine vordefinierte Konstante?
- was meinst Du da zusätzlich ausser der index.php mit dem Inhalt "header("Location: ../index.php", true, 301);" oder "header('Location: ../../index.php');"

Du siehst: meine Erfahrungen mit WBCE sind im allgemeinen sehr gering.

LG

Offline

#36 05.09.2021 00:27:38

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Mit Würgaround meine ich die Änderungen in der modules/ckeditor/ckeditor/ckeditor.php

Ich habe mal das CKE Plugin angepasst, folgendes wurde geändert (Zip ist im Anhang):

  • Modernere Icons

  • Multilang wurde implementiert (es wurden aber noch nicht alle Texte ersetzt)

  • Die CSS Anpassungen die in der ckeditor.php waren, wurden in eine Plugin eigene theme.css verschoben

  • Plugin nimmt jetzt in der CKE Toolbar den Platz des alten Source ein

Was das Ace Modul angeht, ist es möglich dass man die User eigenen Design entfernt und einfach sagt Design X ist global gültig?

Was Erfahrungen mit WBCE angeht, WBCE ist so gemacht dass es ziemlich viel erlaubt und der benötigte Einstiegslevel zu anderen CMS gering ist.
Wenn man weis wo man nachschauen kann bekommt man auch vieles.

Wenn man innerhalb eines Modules jQuery benötigt aber dass vorhandene jQuery nicht greift, kann man auf diese Datei verweisen: include/jquery/jquery-min.js (ob man den Pfad relativ oder per WB_URL angeben kann/muss hängt von der Stelle ab wo es ist).

Wenn dir bestimmte Variablen oder was auch immer nichts sagen, hilft oft eine Suche innerhalb des GitHub Repos weiter

Offline

#37 05.09.2021 18:09:46

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Habe das CKE Plugin übernommen und wieder lauffähig gemacht und die fehlenden Übersetzungen eingebaut.

Die Möglichkeit, das Design zu ändern und die Schriftgröße zu wechseln möchte ich auf alle Fälle behalten, da das einige Anwender wollten.
Daher habe ich die eine geänderte Zeile in der modules/ckeditor/ckeditor/ckeditor.php behalten.

Die Änderungen für das Ace Modul habe ich übernommen und die Parameter werden jetzt im Verzeichnis /var/modules/ace/ gespeichert.
Ich würde jetzt noch die Übersetzungen einbauen. Was ist bei euch Standard, um Übersetzungen in Javascript Sourcecode einzubauen, gibt es da ein Beispiel, das ich nutzen könnte?

Vielen Dank für das Ändern und die Unterstützung!

Offline

#38 09.09.2021 12:26:44

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Habe jetzt die Änderungen gemacht, auch die 2 Sprachen (DE, EN).

Beim Test erscheinen die englischen Texte nur im CKeditor, ansonsten bleibt die Konstante LANGUAGE (die ich abfrage) immer auf "DE" und ich konnte das nicht umstellen. Vielleicht könntet ihr das mal testen.

Das Verzeichnis "ace" in "modules" vor dem Kopieren der neuen Dateien bitte löschen.

Anbei noch ein Droplet zur Anzeige der in WBCE definierten Konstanten (zur Programmierung und Fehlersuche)

Last edited by mastermind (09.09.2021 12:57:03)

Offline

#39 09.09.2021 19:22:20

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

In WBCE gibt es mehrere Ebenen wo die Sprache definiert wird, im Backend ist das die DEFAULT_LANGUAGE in den Grundeinstellungen und User definierte Sprache innerhalb der $_SESSION['LANGUAGE'], Im Frontend kommt zusätzlich noch die Sprache der einzelnen Seiten dazu.

Last edited by colinax (10.09.2021 14:45:51)

Offline

#40 10.09.2021 10:22:17

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Mehrere Fragen:

Wozu gibt es dann die Konstante LANGUAGE die über 300 Mal in WBCE abgefragt wird?

Kann ich das Backend in Englisch betreiben? Ich habe bei den Grundeinstellungen > Standardeinstellungen "English" als Sprache ausgewählt, das ändert gar nichts (Standardinstallation 1.5.0). Einzig die Login-Maske ist Englisch.

Es gibt bei mir keine Konstante SESSION_LANGUAGE, auch die Variable $user_language enthält "DE" - also welche Konstante / Variable sollte ich abfragen?

Offline

#41 10.09.2021 14:04:09

florian
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Die Sprachhandhabung ist leider bei WBCE aus historischen Gründen etwas merkwürdig gelöst.
Du kannst Backend und (als angemeldeter Nutzer) das Frontend in der von Dir gewählten Sprache (sofern diese installiert ist) anzeigen. Diese Einstellung nimmst Du bei "Meine Daten" vor.
Tipp: Installiere Dir das Admin-Tool "System Information", das zeigt Dir auf dem Reiter "WBCE Constants" alle definierten Konstanten und deren Werte an.

Offline

#42 10.09.2021 15:06:09

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

florian wrote:

Die Sprachhandhabung ist leider bei WBCE aus historischen Gründen etwas merkwürdig gelöst.

Dass trifft es perfekt.

@mastermind

Damit du ungefähr versteht wie der Core die Sprache definiert, poste ich mal einen Code:

if (!defined("LANGUAGE")) {
    // Get users language
    if (isset($_GET['lang']) && preg_match('/^[A-Z]{2}$/', $_GET['lang'])) {
        define('LANGUAGE', $_GET['lang']);
        $_SESSION['LANGUAGE'] = LANGUAGE;
    } else {
        if (isset($_SESSION['LANGUAGE']) && $_SESSION['LANGUAGE'] != '') {
            define('LANGUAGE', $_SESSION['LANGUAGE']);
        } else {
            define('LANGUAGE', DEFAULT_LANGUAGE);
        }
    }
}

Habe entsprechend  #39 angepasst

Je nach Modul kann es vorkommen dass die Modulsprachdateien anders eingebunden sind, da es die Programmierung sonst nicht korrekt übernommen hätte.

Sofern unter php alles im Browser Tab bleibt, sollten alle Parameter überall funktionieren, in Verwendung von AJAX und JS oder PopUps kann es durchaus sein, dass die Sprachen nicht funktionieren da diese Techniken am anderen Ende der Leitung umgesetzt werden bzw. durch die Template Engine nicht sauber durch kommt.

z.B. Die elFinder Oberfläche die im CKEditor geöffnet wird richtet sich aus technischen Gründen nach der Browsersprache.

Offline

#43 11.09.2021 11:22:53

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Ja, das mit den Sprachen funktioniert tatsächlich merkwürdig:

  • die Anmeldemaske wird englisch angezeigt, wenn ich bei "Grundeinstellungen" Englisch angebe

  • das Backend wird Englisch, wenn ich bei "Meine Daten" Englisch angebe

  • der CKEditor kümmert sich darum überhaupt nicht, er zeigt Englisch nur dann an, wenn in den Einstellungen des BROWSER Englisch angegeben wird

Das heißt: ein Anwender muss 3 Einstellungen ändern, wenn er WBCE komplett Englisch betreiben will. Das erfordert natürlich Aufwand und viel Kenntnisse für den Anwender.

Für das ace Modul muss ich die Variable $_SESSION['LANGUAGE'] abfragen, das funktioniert bei mir jetzt (Danke für die Korrektur colinax).
Vielleicht könnt ihr das auch mal ausprobieren.

Beim CKEditor Plugin nutze ich die Variable "CKEDITOR.currentInstance.lang", damit es so funktioniert wie bei den anderen Plugins.

Die Module Droplets und Vorschaltseite mussten auch geändert werden, da sich der Aufruf geändert hat, deswegen in den zips enthalten. Ace kann ganz normal als Modul installiert werden.

Last edited by mastermind (11.09.2021 11:25:26)

Offline

#44 11.09.2021 12:59:57

colinax
Administrator

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

mastermind wrote:

Ja, das mit den Sprachen funktioniert tatsächlich merkwürdig:

  • die Anmeldemaske wird englisch angezeigt, wenn ich bei "Grundeinstellungen" Englisch angebe

  • das Backend wird Englisch, wenn ich bei "Meine Daten" Englisch angebe

  • der CKEditor kümmert sich darum überhaupt nicht, er zeigt Englisch nur dann an, wenn in den Einstellungen des BROWSER Englisch angegeben wird

Das heißt: ein Anwender muss 3 Einstellungen ändern, wenn er WBCE komplett Englisch betreiben will. Das erfordert natürlich Aufwand und viel Kenntnisse für den Anwender.

Hallo mastermind,

deine Punkte betreffen diese Merkwürdigkeit gar nicht, da dies eher im Core vorzufinden ist aber der Reihe nach.

Dass sich die Anmeldemaske nach den Grundeinstellungen richtet ist legetim, zu diesem Zeitpunkt weis die Seite ja noch nicht wer Du bist.

Wenn ein neuer User erstellt wird, hat dieser auch die Sprache der Grundeinstellungen.

Was den CKE angeht diese Setting dass sich der Editor nach der User Sprache richtet, flog vor ein paar Jahren mal raus, aus welchem ich das machte weis ich nicht mehr aber das lässt sich wieder leicht ändern.

Füge dafür in der include.php Zeile 84 folgenden Code ein:

// Set user language 
$ckeditor->config['language'] = strtolower(LANGUAGE); // Default $ckeditor->config['language'] = '';

// The language to be used if config.language is empty and it's not possible to localize the editor to the user language.
$ckeditor->config['defaultLanguage']  = strtolower(DEFAULT_LANGUAGE); // Default $ckeditor->config['defaultLanguage']  = 'en';

Edit: Diese Änderung ist in der nächsten CKE Version enthalten

Last edited by colinax (11.09.2021 18:18:14)

Offline

#45 11.09.2021 15:11:51

mastermind
Member

Re: Ace Editor für Droplets, Vorschaltseite und CKEditor

Habe jetzt die 2 Zeilen eingefügt, damit ist eine zusätzliche Umstellung der Sprache im Browser überflüssig.

Zusätzlich habe ich gleich noch eine Abfrage eingebaut, ob das Ace Modul installiert ist.

Last edited by mastermind (11.09.2021 15:25:28)

Offline

Board footer

up