(Gelöst) Backend um Option in der Seitenerstellung erweitern

Das Board für alle Fragen und Diskussionen, die keinen direkten Bezug zu CMS made simple haben
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

Also Dein System kannst Du jederzeit updaten.
Solange sich an grundlegenden Funktionen im Kern von CMSms nichts ändert (Handhabung der Inhalte, deren Eigenschaften etc.) sollte es da keine Probleme geben.

So, und da so viele darum gebeten haben, ist es jetzt endlich auch im Forge zu finden :)
(Die Idee mit dem Modul muss noch 'ne Weile warten)

http://dev.cmsmadesimple.org/projects/content2

Enthält alle Zusätze von JeremyBass und noch einige andere Features wie z.B. Vererbung von Eigenschaften (funktioniert derzeit nur beim FrontEndUser Access und Redirect Page).

Letzteres funktioniert nur in Verbindung mit dem Plugin {content2}.

EDIT: Ja nee is klar. Kaum lade ich das Ding ins Forge, lade ich natürlich die falsche Version hoch  ::)
Sorry, war spät gestern (bzw. heute früh).
Ist im SVN bereits behoben.

Für alle, denen SVN zu suspekt weil unverständlich ist: in der Content2.inc.php in Zeile 67 die Zeile $this->GetBackendSection(); rausnehmen.
Last edited by NaN on Sat Mar 27, 2010 5:32 pm, edited 1 time in total.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

schööön. irgendwie ist mir noch nicht ganz klar wann man den Content Type und wann bzw ob man das Plugin braucht. Also der Zusammenhang beider Dateien ist mir noch nicht ganz klar
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

Ist eigentlich ganz simpel.
Der ContentType ist in erster Linie dazu da, um das Backend um ein paar Funktionen zu erweitern.
D.h. auf das Frontend hat das keinerlei Auswirkung bzw. verhält sich wie der reguläre Inhaltstyp.

Bsp:

Code: Select all


{content block="test" page_tab="Test Tab" label="Testen wir das mal ..." type="dropdown" items="1,2,3"}

Das führt dazu, dass im Backend für diesen Inhaltsblock ein extra Tab mit einem Dropdown-Feld angezeigt wird.
Im Frontend verhät es sich aber vollkommen normal. Es wird lediglich 1, 2 oder 3 ausgegeben (ja nachdem was im Backend ausgewählt wurde).

Code: Select all


{content block="test2" page_tab="Test Tab" label="Testen wir das nochmal ..." type="image"}

Verhält sich im Backend genauso wie {content_image}.
Im Frontend wird allerdings nur der Pfad zum Bild ausgegeben, weil das reguläre Plugin {content} den Parameter type nicht kennt und somit auch die Funktion, ein -Tag auszugeben nicht hat. Man müsste also, um ein Bild anzuzeigen, das Resultat einer Variablen zuweisen und dann das -Tag selber bauen.
Und hier kann man stattdessen {content2} verwenden. Der gibt dann gleich das Bild aus.

Eine andere Funktion ist der FrontEndUser Zugriff auf den Inhalt.
Das reguläre Plugin prüft nicht, ob der Seitenbesucher eingeloggt ist und einer Gruppe angehört, die im Backend für diese Seite festgelegt wurde. Weil das Plugin diese Funktion nicht kennt.
Will man also ohne CustomContent und FrontEndUsers im Template, eine Seite einfach nur für bestimmte User freigeben, braucht man das Plugin {content2}.
(Ich muss hierbei aber noch testen wie es sich mit dem Zwischenspeichern verhält. Möglicherweise kann man das dann für diese Seite sogar aktiviert lassen.)

In den nächsten Tagen werde ich das noch als Modul veröffentlichen. (ist schon im SVN; wer will kann's testen)
Dann kann man sich die einzelnen Dateien sparen.
Dann ruft man seinen Inhalt entweder mit {content} oder mit {XContent} auf. Je nachdem welche Funktion man braucht.
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

nhaack wrote: [...]
hättest du vielleicht noch Platz für weitere Feature-Wünsche?  ;)
[...]
Ein "Date-Picker-Feld". Also ein einzeiliges Feld mit einem Button der einen kleinen Kalender öffnet (oder direkt ein Kalender im Backend-Dialog). Das ausgewählte Datum wird in das Feld gesetzt.
Ist drin. (SVN)
nhaack wrote: [...]
Ein "File-Picker-Field". Also quasi ein einzeiliges Eingabe-Feld mit einem Button der entweder den Filemanager oder Imagemanager aufruft (je nach Parameter). Im Feld wird dann der href-Wert der ausgewählten Datei gespeichert.
[...]
Da arbeite ich noch dran.
Jeremy hat ja schon den ersten Ansatz geliefert.
Allerdings mag ich den ImageManager nicht besonders. Ich kann ihn nicht einfach via require oder include einbinden, weil die entsprechende Datei das kompltette BackendTheme mit einbezieht. Das führt zu Fehlermeldungen etc. weil dann einiges doppelt eingebunden wird. Mit dem Parameter "disable_theme" kann ich hier leider auch nicht arbeiten, da keine modulinterface.php verarbeitet - d.h. der Parameter hat einfach keinerlei Auswirkung.
Der ImagaManager ist zwar irgendwie Teil des FileManagers aber irgendwie fest im Backend verankert. Schade, dass das ausgerechnet hier nicht so ganz mit der Modularität klappt.
Ich muss also den halben Quelltext der imagefiles.php aus dem Admin-Verzeichnis kopieren, nur um das iFrame mit den Bildern zu bekommen. Das bläht den Inhaltstypen unnötig auf.
Außerdem weiß ich noch nicht genau wie ich die URL des angewählten Bildes in ein Textfeld übertrage. Dafür ist der ImageManager einfach nicht gemacht.
Und mich stört die Uploadfunktion. Nicht, weil sie da ist, sondern wie sie funktioniert. Da wird jedesmal die komplette Seite neu geladen. Das Uploadformular ist also nicht mit im Iframe enthalten.

Vielleicht kopiere ich besser einfach das Plugin vom TinyMCE.

Hat hier jemand Erfahrungen mit dem KFM FileManager oder dem FileManager vom FCK Editor?
Vielleicht nehm ich ja auch den.
Je nachdem was einfacher einzubauen bzw. im Backend leichter zu handhaben ist.

Apropos FileManager... kennt jemand Relay?
Nein! Den baue ich da jetzt nicht ein. Aber das Ding macht schon was her. Das wäre ein FileManager nach meinem Geschmack ;)
Last edited by NaN on Wed Mar 31, 2010 3:50 am, edited 1 time in total.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

NaN wrote:

Apropos FileManager... kennt jemand Relay?
Nein! Den baue ich da jetzt nicht ein. Aber das Ding macht schon was her. Das wäre ein FileManager nach meinem Geschmack ;)
hast du dir mal plupload angeguckt?
da müsste auf jeden fall mal nachgebessert werden.
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

nicmare wrote:
NaN wrote:

Apropos FileManager... kennt jemand Relay?
Nein! Den baue ich da jetzt nicht ein. Aber das Ding macht schon was her. Das wäre ein FileManager nach meinem Geschmack ;)
hast du dir mal plupload angeguckt?
da müsste auf jeden fall mal nachgebessert werden.
Sieht cool aus.
Ist aber soweit ich weiß primär nur für uploads. Ich brauch aber was, womit ich Dateien anzeigen, auswählen und deren Pfad in ein Textfeld schreiben kann ;)

Hab mich inzwischen schon für den Filepicker vom Tiny entschieden. Den kopier ich einfach und baue den als Modulaktion mit ein. Somit ist der Inhaltstyp nicht von anderen Modulen abhängig.
Das sollte für die meisten Zwecke ausreichen. Wer mehr will, muss halt ein anderes Modul verwenden.
Immerhin will ich hier kein superduper allround Modul schreiben ;D
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

wollte jetzt noch gebrauch vom content_image tag machen aber das geht ja nicht im Zusammenhang mit "Inhalt (extended" - richtig??
Also habe ich das probiert:

Code: Select all

	{content block="Bildwahl" assign="contentimage" dir="images" urlonly="true" type="image"}
	{content block="Bildbeschreibung" oneline="true" assign="imagetext"}
	{if !empty($contentimage)}
		<img src="{eval var=$contentimage}" alt="{eval var=$imagetext}" />
	{else}
		<img src="uploads/images/startseite.jpg" alt="Startseite" />
	{/if}
Wenn also kein Bild gewählt wird, soll ein Standardbild angezeigt werden.
Funktioniert alles bis auf das Dropdown. Im Backend erscheint das Label des Blocks "Bildwahl" aber darunter kommt kein input für die tatsächliche Bildwahl?? Habs auch schon zum Test nur auf

Code: Select all

{content block="Bildwahl" dir="images" urlonly="true" type="image"} 
reduziert. selbes Problem. auch {content2 geht nicht. auch ohne "dir" ändert sich nichts. Nun bin ich ratlos
Last edited by nicmare on Thu Apr 01, 2010 2:18 pm, edited 1 time in total.
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

Da ist ein Fehler im Quellcode.
Also entweder änderst Du in der Content2.inc.php in Zeile 1048

Code: Select all

$img_mode = 'dropdown';
in

Code: Select all

$img_mode = 'default';
oder umgekehrt in Zeile 490

Code: Select all

if($blockInfo['img_mode'] == 'default') {
in

Code: Select all

if($blockInfo['img_mode'] == 'dropdown') {
oder Du lässt es einfach und gibst für das Bild noch den Parameter img_mode="default" an.
Da ist im Code etwas durcheinander geraten.
Im SVN sollte das aber schon behoben sein.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

ja ok. habe zeile 490 geändert. nun kann man auch ordnungsgemäß nen bild auswählen. aber nur wenn nen dir angegeben ist! sonst gibts ne fehlermeldung.
jedenfalls stimmt aber der output noch nicht. bei meinem code kommt dann das raus:


Da hat sich wohl noch ein Fehlerchen versteckt :-)
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

Ähm... der Fehler kommt aber nicht von mir  :o

Wie gesagt, in paar Tagen kommt das Modul.
Und da siehts dann wieder ganz anders aus ;)
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

kanns kaum abwarten :)
Andiministrator

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by Andiministrator »

Grad gesehen, coole Sache, dass es jetzt ein Projekt dafür gibt.
Danke für die Arbeit!
Bin schon auf das Modul gespannt ...
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by nicmare »

baust du da eigentlich auch so einen filepicker für type="image" ein? *liebguck* :D
dass man also nicht mehr ne liste mit dateinamen von bildern hat, sondern die thumbnails sieht und makieren kann
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

Wie gesagt, da arbeite ich noch dran. Werd den vom tiny mce nehmen. Aber keine sorge, das kommt da noch rein ;)
Beim datepicker frag ich mich gerade, ob nicht besser der timestamp gespeichert werden sollte anstelle des formatierten datums. Im backend kann ich ja für die anzeige die usereinstellungen nehmen. Und im frontend kann man dann mit smarty modifikatoren arbeiten.

Aber jetzt ist erstmal Ostern ...
NaN

Re: (Gelöst) Backend um Option in der Seitenerstellung erweitern

Post by NaN »

so, erste beta version ist da.
Wer will, kanns testen.
Ist wie gesagt noch beta.
Der Filepicker braucht noch bissel finetunning. (ist im prinzip der vom tiny mce; hat aber noch nicht alle funktionen; upload fehlt z.B. noch)
Die Doku ist erstmal nur auf englisch.
Lest sie euch durch, da ich einige parameter geändert habe.
Ich weiß allerdings nicht mehr welche und ich war bis jetzt zu faul die alle rauszusuchen.
in der doku müssten alle stehen die wichtig sind.

ich brauch jetzt erstmal eine mütze schlaf...
Locked

Return to “Stammtisch”