editarea Vollbildmodus

Gesperrt
langwebdesign
Beiträge: 74
Registriert: So 23. Okt 2005, 14:11
Wohnort: Titting
Kontaktdaten:

editarea Vollbildmodus

Beitrag von langwebdesign »

Hallo,

Ich hab jetzt auf die schnelle nix dazu gefunden.
Ist es möglich den speichern Button beim Vollbildmodus der EditArea trotzdem anzuzeigen?

mfg Stephan
tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono »

Soweit ich weiß bislang nicht. Wäre aber ein super Feature.
Bis dann
Tono
tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono »

Hier kommt der Hack:

Datei contenido/external/edit_area/class.edit_area.php die function renderScript() austauschen gegen:

Code: Alles auswählen

    function renderScript() {
        //if editor is disabled, there is no need to render this script
        if ($this->bActivated == false) {
            return '';
        }
        
        //if external js file for editor should be included, do this here
        $sJs = '';
        if ($this->bAddScript) {
            $sPath = $this->aCfg['path']['contenido_fullhtml'];
            $sJs .= '<script type="text/javascript" src="'.$sPath.'external/edit_area/edit_area_compressor.php?plugins"></script>'."\n";
            $sJs .= '<script type="text/javascript">
                        function save_callback(id, content) {
                    	var oForm = document.getElementById(id).form;
                    	for (var i = 0; i < oForm.length; ++i) {
                    		var element = oForm.elements[i];
							if(editAreaLoader.getValue(element.id))
							{
								element.value = editAreaLoader.getValue(element.id);
							}
						}
                    	oForm.submit();
                    }
                    </script>';
        }
        
        //define template for edit_area script
        $sJs .= '<script type="text/javascript">
                    function init_editarea_%1$s() { 
                       var oTextarea = document.getElementById("%1$s")
                       if (!oTextarea) {
                           window.setTimeout("init_editarea_%1$s()", 50);
                       } else {
                           var width = oTextarea.offsetWidth;
                           oTextarea.style.width = width+"px";
                           editAreaLoader.init({
                                id: "%1$s"	
                                %2$s
                           })
                       }
                    }
                    
                    window.setTimeout("init_editarea_%1$s()", 50);
                </script>';
        
        //get all stored properties and convert it in order to insert it into edit_area js template
        $sProperties = '';
        foreach ($this->aProperties as $aProperty) {
            if ($aProperty['is_numeric'] == true) {
                $sProperties .= ', '.$aProperty['name'].':'.$aProperty['value']."\n";
            } else {
                $sProperties .= ', '.$aProperty['name'].': "'.$aProperty['value']."\"\n";
            }
        }
        
        //fill js template, using sprintf
        $sTextareaId = $this->sTextareaId;
        $sJsResult = sprintf($sJs, $sTextareaId, $sProperties);
        
        return $sJsResult;
    }
Zwei neue Mandanten/System/Benutzer - Einstellungen:

Code: Alles auswählen

edit_area	begin_toolbar	save
edit_area	save_callback	save_callback
Es erscheint in jeder Edit_Area-Instanz als linkester Button ein Save-Knopf, der das gesamte Modul/Layout/CSS speichert.

Getestet nur mit FF, über IE Feedback freue ich mich, garantiere aber für nichts.
Bis dann
Tono
langwebdesign
Beiträge: 74
Registriert: So 23. Okt 2005, 14:11
Wohnort: Titting
Kontaktdaten:

Beitrag von langwebdesign »

Guten Morgen,

so habs gerade eingebaut und funktioniert einwandfrei!
wies im ie is kann ich dir auch nicht sagen.

Frage an die Entwickler: Wird das ins nächste update mit aufgenommen???

noch ne Anregung dazu, ich hab den Editor wie im Thread http://forum.contenido.org/viewtopic.php?t=21932 beschrieben angepasst, könnte nach dem speichern der Editor wieder angezeigt werden wie er vor dem speichern war?

mfg Stephan
tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono »

langwebdesign hat geschrieben:Frage an die Entwickler: Wird das ins nächste update mit aufgenommen???
Wenn sich noch ein paar Leute finden, die verifizieren, dass es geht und keine Probleme macht unter anderem auch mit IE, werde ich es einbauen.
langwebdesign hat geschrieben:noch ne Anregung dazu, ich hab den Editor wie im Thread http://forum.contenido.org/viewtopic.php?t=21932 beschrieben angepasst, könnte nach dem speichern der Editor wieder angezeigt werden wie er vor dem speichern war?
Tut das gerade nicht so? Hängt das mit der hier beschriebenen Änderung zusammen, oder war das schon vorher so?
Bis dann
Tono
langwebdesign
Beiträge: 74
Registriert: So 23. Okt 2005, 14:11
Wohnort: Titting
Kontaktdaten:

Beitrag von langwebdesign »

Hi,

normalerweise lädt sich die editarea ja immer.
nach dem speichern wird die Seite wieder aufgerufen und die editarea ist wieder da.

selbst beim standard ist es dann so das wenn aus dem Vollbildmodus gespeichert wird die Seite beim neu laden wieder im standard kommt und man den Vollbildmodus wieder einschalten muss!

da ich die editarea nur bei bedarf laden lasse kommt sie nach dem speichern auch nicht mehr.

hier wäre es toll wenn die editarea nach dem speichern über die diskette wieder in den letzten zustand geladen würde.

ich weis jetzt aber nicht wie weit das überhaupt möglich ist.
und wenns nicht geht ist es ja auch nicht so schlimm!

mfg stephan
timo.trautmann_4fb
Beiträge: 472
Registriert: Di 15. Apr 2008, 15:57
Wohnort: Michelstadt
Kontaktdaten:

Beitrag von timo.trautmann_4fb »

Den Speicherbutton habe ich soeben als Standard eingefügt. Ich denke nicht dass er est per Systemeinstellung aktivierbar sein muss. Das Callback Script läuft jedoch im IE nicht. Habe es geringfügig angepasst. Kommt dann mit dem nächsten Release.
tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono »

timo.trautmann_4fb hat geschrieben:Das Callback Script läuft jedoch im IE nicht. Habe es geringfügig angepasst.
Danke, ich bin als Macianer nicht so flott mit den Eigenheiten des IE. :wink:

Wenn das standardmäsig drin sein soll lieber statt: (Zeile 123)

Code: Alles auswählen

        $this->setProperty('begin_toolbar', 'save', false);
direkt in der Toolbar ergänzen. (Zeile 127)

Code: Alles auswählen

        $this->setProperty('toolbar', 'save, search, go_to_line, fullscreen, |, undo, redo, |, select_font,|, change_smooth_selection, highlight, reset_highlight, |, charmap, |, help', false);
Eine Idee, wie der Editor seinen Modus behalten könnte: In dem Edit-Formular gibt es ein zusätzliches verstecktes Feld, das den Modus enthält (z.B. JSON) dieses Feld wird mittels des submitForm-Callbacks des Editors gesetzt und bei neu initialisieren wieder ausgewertet.

Langfristig wäre sicherlich die Speicherung des Editor-Inhalts mittels AJAX-Callback der sinnvollere Weg, aber dafür fehlen noch die Schnittstellen.
Bis dann
Tono
timo.trautmann_4fb
Beiträge: 472
Registriert: Di 15. Apr 2008, 15:57
Wohnort: Michelstadt
Kontaktdaten:

Beitrag von timo.trautmann_4fb »

Guter Vorschlag, direkt übernommen. :-)
tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono »

timo.trautmann_4fb hat geschrieben:Guter Vorschlag, direkt übernommen. :-)
Meinst Du die AJAX-Speicherung der Inhalte? Oder nur die Position des Save Knopfes? 8)
Bis dann
Tono
timo.trautmann_4fb
Beiträge: 472
Registriert: Di 15. Apr 2008, 15:57
Wohnort: Michelstadt
Kontaktdaten:

Beitrag von timo.trautmann_4fb »

Ich meine natürlich deinen Vorschlag, den save Button an geeigneter Stelle zu initialisieren. ;)
Gesperrt