CMS_TEXT - Editor zu klein.

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
spectral
Beiträge: 38
Registriert: Mi 5. Mär 2008, 16:40
Kontaktdaten:

CMS_TEXT - Editor zu klein.

Beitrag von spectral » Do 31. Jul 2014, 09:34

Liebe Community!

Wir nutzen CMS_TEXT in unseren Modulen sehr viel, um (teilweise auch größere) Textbereiche editierbar zu machen, ohne dass der Redakteur dort Formatierungen machen kann. In der neuen Version 4.9.4 erscheint aber nach dem Klick auf den Stift bei CMS_TEXT keine Textarea mehr, sondern nur noch ein kurzes Textfeld, in dem nur 50 Zeichen zu sehen sind und wo es keine Möglichkeit gibt, ohne html-Tags Zeilenumbrüche zu machen. Warum?

Den WYSIWYG Editor ganz zu deaktivieren und CMS_HTML zu verwenden ist keine Option, da wir den natürlich für andere Contentbereiche brauchen.

Auf der Seite https://docs.contenido.org/display/CONDEVE/CMS_TEXT ist folgende Grafik:

Bild

Es wäre viel besser, wenn bei einem CMS_TEXT ein größerer Texteditor erscheint, wie das bei Contenido 4.8 der Fall war, und die bearbeitbaren Bereiche genauso markiert wären, wie in der Grafik am besten mit einem Grünen Balken darüber in dem steht, ob es ein TEXT, HTML, HTMLHEAD usw. ist.

In der include.CMS_TEXT.php (https://git.contenido.org/projects/CON/ ... S_TEXT.php) steht in Zeile 86:

Code: Alles auswählen

<textarea name="CMS_TEXT" rows="15" cols="90"><?php echo $a_content[$type][$typenr]?></textarea>
Aber im Source-Code des Editors befindet sich ein Script, das nur ein <input type="text"> einblendet:

Code: Alles auswählen

(function(Con, $) {
$(function() {
// replace the text div with an input field if the div or the edit button is clicked
$('#text_editbutton_100, #text_text_100').click(function() {
var text = $('#text_text_100').html();
$('#text_text_100').replaceWith('<input id="text_text_100" name="text_text_100" value="" size="50" type="text" class="edit-textfield edit-text-textfield">');
$('#text_text_100').val(text);
$('#text_text_100').focus();
$('#text_editbutton_100').replaceWith('<img id="text_savebutton_100" src="http://mb-wt.de/contenido/images/but_ok.gif" style="margin-left: 5px;cursor: pointer;">');
});
// submit the form if the save button or enter is clicked
$(document).on('click', '#text_savebutton_100', function() {
cContentTypetextSave100();
});
$(document).keypress(function(e) {
if (e.which == 13 && $('#text_text_100').is(':focus')) {
cContentTypetextSave100();
}
});
/**
* Adds the given name/value pair as a hidden field to the editform so that it
* is submitted to CONTENIDO. If a hidden field with the given name already
* exists, the value is overriden.
*
* @param {String} name The name of the form field which should be added.
* @param {String} value The value of the form field which should be added.
*/
function cContentTypetextAppendFormField100(name, value) {
// if a hidden input field with the given name already exists, just set the value
if ($('form[name="editcontent"] input[type="hidden"][name="' + name + '"]').length > 0) {
$('form[name="editcontent"] input[type="hidden"][name="' + name + '"]').val(value);
} else {
// otherwise append a new field to the form
$('form[name="editcontent"]').append('<input type="hidden" value="" name="' + name + '">');
$('form[name="editcontent"] input[type="hidden"][name="' + name + '"]').val(value);
}
};
/**
* Saves the entered text.
*/
function cContentTypetextSave100() {
cContentTypetextAppendFormField100('text_action', 'store');
cContentTypetextAppendFormField100('text_id', '100');
var text = $('#text_text_100').val();
cContentTypetextAppendFormField100('text_text_100', text);
Con.Tiny.setContent('1');
}
});
})(Con, Con.$); 
Kann man das irgendwie umstellen, dass beim Klick auf das Stift-Icon das Formular mit der Textarea aus dem php angezeigt wird?

Danke und schöne Grüße, Andras

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von rethus » Fr 1. Aug 2014, 19:18

Ich weiß nicht, ob es schon so eine Art contenido.local.css gibt, in der man eigene Styles definieren kann, um Standard-Styles upgradesicher zu überlagern.... aber ich denke nicht.
BTW: Dies wäre dann ein schönes Feature das man ergänzen könnte.

Also könntest du dass hier versuchen:

Ich hab es nicht reproduziert, aber die einfachste und schnellste Variante und mein erster Gedanke das Textfeld in der Optik zu vergrößern war, dass du einfach ein Mini-Modul schreibst, das abfragt, ob die Page im Backend-Mode ist, oder nicht.
Ist Sie im Backendmode, erzeugst du ein Include für dein persönliches "Backend-Overwrite"-Stylesheet, oder ein normales <style>-Konstukt </style>.

Da dieses Modul nach sämtlichen Headern im Backend geladen werden sollte, dürfte es alle anderen Stylesheets überschreiben, und somit müsste deins dann entsprechend greifen. Dann also einfach die bestehenden Stylesheets wie gewünscht mit deinen überlagern.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

wollewutz
Beiträge: 8
Registriert: Mo 25. Aug 2014, 12:08
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von wollewutz » Do 4. Dez 2014, 00:39

Hi,
mich hat's auch gestört.
Um wieder eine Textarea zu erhalten muss in der class.content.type.text.php (https://git.contenido.org/projects/CON/ ... e.text.php) Zeile 85 cHTMLTextbox in cHTMLTextarea geändert werden

Code: Alles auswählen

$textbox = new cHTMLTextarea($this->_prefix . '_text_' . $this->_id, '', '', '', $this->_prefix . '_text_' . $this->_id, false, NULL, '', 'edit-textfield edit-' . $this->_prefix . '-textfield');
damit ein Druck auf die Enter-Taste nicht zum Speichern führt, muss noch in einem Javascript-Template (https://git.contenido.org/projects/CON/ ... xt_js.html) Zeile 16 bis 20 auskommentiert werden.

Code: Alles auswählen

        /*$(document).keypress(function(e) {
            if (e.which == 13 && $('#{PREFIX}_text_{ID}').is(':focus')) {
                cContentType{PREFIX}Save{ID}();
            }
        });*/
lg
Wolfgang

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von rethus » Do 4. Dez 2014, 11:29

@wollewutz: Auch eine schöne nachhaltige Lösung, allerdings nicht "upgrade-save".
Ich presönlich bevorzuge immer den CORE so lange wie möglich unangetastet zu lassen. Das bringt enorme Entlastung bei Upgrades. Denn entweder muss man sich jede Anpassung am Core notieren und diese dann wieder nachpflegen, oder einfach nach dem Upgrade auf Fehlersuche gehen.
Beides mag ich nicht so recht :)

Daher immer gut dafür einsetzen, dass sowas in den Core kommt, wenn es sinnvoll ist, dann braucht man nie wieder ein Gedanken daran zu verschwenden. Das fällt dann in den Bereich "Social Engineering" :lol:


Von mir ein +1 für diesen Verbesserungsvorschlag mit der "Textarea ↦ Core"
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

Oldperl
Beiträge: 4254
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von Oldperl » Do 4. Dez 2014, 11:33

rethus hat geschrieben:Denn entweder muss man sich jede Anpassung am Core notieren und diese dann wieder nachpflegen, oder einfach nach dem Upgrade auf Fehlersuche gehen.
Beides mag ich nicht so recht :)
Alternativ kann man inzwischen viele Bereiche auch per Plugin "ersetzen" und muss dann nur beim nächsten Update/Upgrade im Plugin schauen bzw. dieses oder Teile davon deinstallieren.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von rethus » Do 4. Dez 2014, 14:14

Wie meinst du dass? So eine Art "Overwriting"?

Hast du da ein Beispiel parat um es anschaulich zu erklären?
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: CMS_TEXT - Editor zu klein.

Beitrag von frederic.schneider_4fb » Do 4. Dez 2014, 15:08

Wir haben Euren Wunsch gerne in unserem Ticket-System für eine spätere Version vermerkt.
Frederic Schneider
Entwickler bei der four for business AG

Antworten