Seite 1 von 1

TinyMCE und die Text-/Schreibrichtung - 'ne Ergänzung dazu

Verfasst: Do 30. Mär 2006, 14:42
von Greg°r
Damit der Editor auch mit den beiden Schreibrichtungen zurecht kommt, sind ebenfalls noch'n paar Modifikationen an zwei Dateien notwendig, die wie bekannt unter contenido/external/wysiwyg/tinymce2 zu finden sind. Die Info mit der Textrichtung kommt übrigens aus der Datenbank bzw. wird ja unter Administration ---> Sprachen festgelegt und ist mit einer Funktion abrufbar, die mit

Code: Alles auswählen

cInclude('includes', 'functions.lang.php');
am Anfang von editorclass.php eingebunden werden muss. Im Konstruktor der Klasse, also in der Funktion cTinyMCEEditor muss ebenfalls noch die globale Variable

Code: Alles auswählen

$lang
mit angegeben werden - die eben inkludierte Funktion benötigt diese nämlich als Parameter. In der Klasse selbst sind noch zwei neue Variablen zu definieren

Code: Alles auswählen

var $_Directionality;
var $_ToolbarAlign;
, so daß das ganze nun so aussieht:

Code: Alles auswählen

<?php
cInclude("classes", "class.wysiwyg_editor.php");
cInclude('includes', 'functions.lang.php');

class cTinyMCEEditor extends cWYSIWYGEditor
{
	var $_sLanguage;
	var $_sBaseURL;
	var $_sDocumentBaseURL;
	var $_sStylesheet;
	var $_iWidth;
	var $_iHeight;
	var $_sToolbarMode;
	var $_bXHTMLMode = false;
	var $_sStyles;
	var $_Directionality;
	var $_ToolbarAlign;

	function cTinyMCEEditor ($sEditorName, $sEditorContent)
	{
		global $belang, $cfg, $cfgClient,$client, $lang;

Nun die beiden neuen Variablen irgendwo in der cTinyMCEEditor-Function u.a. mit dem Rückgabewert der inkludierten Funktion langGetTextDirection() belegen:

Code: Alles auswählen

$this->_Directionality = langGetTextDirection($lang);
$this->_ToolbarAlign = ($this->_Directionality == 'ltr') ? 'left' : 'right';
und weiter unten (wo schon ähnliches passiert) diese Variablen dem Template zuweisen:

Code: Alles auswählen

$tpl->set('s', 'DIRECTIONALITY', $this->_Directionality);
$tpl->set('s', 'TOOLBAR_ALIGN', $this->_ToolbarAlign);
Das wars mit den Änderungen in editorclass.php. Letztendlich ist im tinymce.tpl.html und in der Funktion (Konstruktor) tinyMCE.init latürnich noch dies einzufügen:

Code: Alles auswählen

theme_advanced_toolbar_align : "{TOOLBAR_ALIGN}",
directionality : "{DIRECTIONALITY}",
Die Kommas hinter den Zuordnungen besagen, daß diese zwei Zeilen "irgendwo" im Script plaziert wurden; also diesbez. aufpassen, wo die Zeilen eingefügt werden da am Ende kein abschießendes Komma stehen darf.

However - that's all folks.

Cheers - Greg°r

Verfasst: Do 30. Mär 2006, 18:08
von HerrB
Danke. Verschoben.

Gruß
HerrB

Verfasst: Mo 12. Jun 2006, 15:05
von HerrB
In ähnlicher Form eingebaut.

Gruß
HerrB