(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 »

nhaack wrote: wenn ich mehrere Block-Elemente mit dem Parameter page_tab verwende, erhalte ich den gewünschten Tab mehrfach (Verwendung wie folgt)

{content2 block="test" type="checkbox" page_tab="more" label="Kommentare Anzeigen"}
{content2 block="test2" type="checkbox" page_tab="more" label="Auf Homepage Teasern"}
Hm, komisch, sollte eigentlich nicht der Fall sein. Es müsste nur einen Tab namens "more" ergeben in dem dann zwei Checkboxen sind.
Hab allerdings nur mit der CMS Version 1.5.2 getestet.
nhaack wrote: Zudem werden die Werte nicht gespeichert (bei type=text allerdings schon). Ich verwende CMSMS 1.5.4. unter PHP 5.2.9 und mySQL 4.0.27 (hier gab's im System aber ein gelbes Ausrufezeichen).

Ich werde versuchen, das System nochmal mit einer aktuelleren mySQL Version zu installieren um zu schauen, ob das Speicherproblem dann gelöst wird. Hat jemand anderes diese Probleme ebenfalls?
Ah, verdammt!
Sollte nichts mit der SQL Version zu tun haben.
Ich hab vergessen den Checkboxen ein Value-Attribut zu geben.
Somit ist der Wert, der für diesen "Block" gespeichert wird immer... nichts.
Werde die Funktion zum Speichern nochmal überarbeiten (die hatte ich noch im Original-Zustand gelassen), sodass für Checkboxen lediglich "true" bzw. "false" gespeichert wird, anstelle deren Werte.

Foaly* wrote: Ein kleiner Fehler hat sich allerdings im Code eingestellt.. Die Klasse hat mit der Benennung Content2 keinen Konstruktor mehr ;)
Ähm, aha.
Soweit war ich da noch garnicht vorgedrungen.
Mich hat immer nur interessiert, ob es funktioniert.
Das könnte man mit einem Modul regeln, wodurch dieser Content-Type "registriert" wird.
(Gibt da eine Funktion in der Modul API namens RegisterContentType())
Somit dürfte das Problem gelöst sein.
Hatte ohnehin vor das ganze als Modul zu verpacken.
Somit kann man noch zusätzliche Berechtigungen für die selbst hinzugefügten Tabs bzw. Felder setzen.
Außerdem wirds mit der "Installation" dann einfacher.

Foaly* wrote: Außerdem zwei weitere kleine Punkte:
  • Du hast nicht die aktuellste Version vom Basis-Inhaltstyp verwendet. Merkt man z.Bsp. daran, dass der Standardbildblock nicht im Optionstab ist.
Könnte durchaus sein, da ich nur mit der CMS Version 1.5.2 gestetet habe.
Danke für den Hinweis.

Foaly* wrote:
  • Das {content} tag ohne Parameter für den eigentlichen Seiteninhalt funktioniert nicht mehr.
Argh, auch hier wieder: Verdammt!
Das liegt an dem Regulären Ausdruck nach dem das Template nach den Content-Tags durchsucht wird.
Hatte in letzter Sekunde noch das Plugin testen wollen.
Und jetzt sucht der Inhaltstyp nur noch nach {content2}.

Hab hier gerade keinen guten Editor zur Hand.
Weiß nicht in welcher Zeile das steht.
Sucht man nach

Code: Select all

$pattern = '/{content2(\s([^}]*))*}/';

(in der Funktion GetAdditionalContentBlocks()).

Und ändert dort diese Zeile in
$pattern = '/{content2?(\s([^}]*))*}/';
Damit dürfte nach beiden Tags gesucht werden.

Foaly* wrote: In Zeile 308f schreibst du
# removed the default content block
Hatte doch eigentlich seinen Sinn? ;)
Den Zusammenhang mit dem {content2} tag und deinem Kommentar in Zeile 774 versteh ich dann allerdings nicht ganz
# since we also need to get the default content tag
Aber an der Stelle wäre wahrscheinlich ein bisschen Nacharbeit und Verzicht auf das Plugin als Resultat sinnvoll :)
Kurze Erklärung dazu:
# removed the default content block
An dieser Stelle wurde unabhängig von den Parametern generell ein Textarea angezeigt.
Es war also nicht möglich dem Standard-Inhalt den Block-Typ Checkbox zu geben.
Ich wollte dieses "Standard-Inhalt-Ding" einfach weg haben.
Wenn ich kein {content}-Tag im Template habe, dann soll auch im Backend kein Feld dafür angezeigt werden, oder?
# since we also need to get the default content tag
Im original Inhaltstyp, wurde nur nach {content und parameter} gesucht.
Das {content}-Tag selbst, ohne Parameter wurde ignoriert.
Ich habe an dieser Stelle nur den regulären Ausdruck so angepasst, dass auch nach {content} gesucht wird.
Da ich ja oben den Standard Block entfernt habe.

Somit wird auch der "reguläre" Inhalt wie ein einfacher Inhaltsblock behandelt

Danke für die (überwiegend) positiven Rückmeldungen :)
Werde mich dann übers Wochenende mit der aktuellsten Version von CMSms und seinem aktuellen Inhaltstyp befassen und das Kontruktor-Problem (hoffentlich) lösen.

lg,
NaN
nhaack

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

Post by nhaack »

Hey NaN!

Vielen dank für deinen Einsatz. *hüstel**hüstel* Wenn du dich an eine Modulform als Erweiterung machst und eh vieles nochmal anpackst, hättest du vielleicht noch Platz für weitere Feature-Wünsche?  ;)

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.

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.

Gerade den File Picker fände ich ziemlich cool, meinst du dies wäre machbar?  :)

Beste Grüße und vielen Dank nochmals
Nils

P.S.: Ich finde auch, dass die Funktionen später unbedingt Teil des Core werden sollten.
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

NaN wrote: Ähm, aha.
Soweit war ich da noch garnicht vorgedrungen. [...]
Ich meinte eigentlich nur den Konstruktor der Content2 Klasse.... Die Methode ("Funktion"), die den Namen der Klasse trägt ist deren Konstruktor (PHP4). Also musst du, wenn du die Klasse umbenennst auch den Konstruktor umbenennen, was in dem Fall die erste Methode ist.
NaN wrote: [...] und das Kontruktor-Problem (hoffentlich) lösen.
Brauchst du dann schätzungsweise garnicht!

Hoffentlich hast du ein wenig Zeit um dein gut ankommenden Inhaltstyp fein zu schleifen! :)
Last edited by Foaly* on Fri Apr 17, 2009 3:00 am, edited 1 time in total.
NaN

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

Post by NaN »

Foaly* wrote:
NaN wrote: [...] und das Kontruktor-Problem (hoffentlich) lösen.
Brauchst du dann schätzungsweise garnicht!
Na dann kann ich mir das mit dem Modul evtl. doch sparen.
Wäre mit Kannonen auf Spatzen geschossen.
Außerdem gibts in der Modul-API diverse Core-Funktionen nicht.
Müsste ich erstmal sehen wie man von einem Modul aus darauf zugreifen kann.
Foaly* wrote: Hoffentlich hast du ein wenig Zeit um dein gut ankommenden Inhaltstyp fein zu schleifen! :)
Ist ja Wochenende.
Und das Wetter ist hier gerade auch nicht so besonders... ;)

nhaack wrote: [...]
Ein "File-Picker-Field".
[...]
Ein "Date-Picker-Feld".
[...]
Irgendwie wusste ich, dass sowas von Dir kommen würde ;)
Ein Datums-Dropdown, bzw. ein Zeit-Dropdown wäre auf jedenfall machbar. (kann man dann auch mit Parametern "von/bis", "Intervall" etc. vorgeben.)

Ein Kalender oder Filepicker klingt für mich nach einer Menge Javascript.
Da gibts aber zum Glück einen Haufen fertige Scripts, die man da dann bestimmt recht einfach einbauen könnte.
Mal schauen was sich da so machen lässt.

Im Original-Inhaltstyp ist übrigens auch eine Funktion drin, nach der man auch Content-Blöcke vom Typ "Modul" anlegen könnte.
Diese ist allerdings noch deaktiviert.
Hat beim Test auch leider nicht funktioniert.
Diese Funktion prüft, ob das jeweilige Modul einen eigenen Inhaltstyp hat und würde den dann mit anzeigen (glaube ich).
Muss ich mal abwarten, was da in den nächsten CMS Versionen noch am Inhaltstyp geändert wird.

Ich überlege, wie man die Sache mit den Modulen noch anders angehen könnte, sodass der Editor im Backend für eine Seite eine Reihe von im Template vorgegebenen Modulen zur Auswahl hat, die er dann einfach "Aktivieren/Deaktivieren" und denen er evtl. die ein oder anderen Parameter geben könnte.

Falls da jemand Ideen hat, lasst sie hören.

(Am Ende wird das Backend noch dynamischer und komfortabler als das Frontend :D )
Last edited by NaN on Fri Apr 17, 2009 10:02 am, edited 1 time in total.
nhaack

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

Post by nhaack »

Hey NaN,

ja ich konnte mich einfach nicht zurück halten. Die "Picker" Felder kenne ich aus anderen Enterprise CMS und finde sie extrem praktisch... (für Redakteure) könnte man da nicht irgendwie auf die entsprechenden Funktionen des TinyMCE zurück greifen? Der verfügt ja im Grunde genommen schon über die passenden Module?

Stecke leider selbst voll in der Entwicklung von zwei Sites und kann dich leider nur mit Ideen ("Anforderungen") unterstzützen ;D - wäre aber bereit die Entwicklung finanziell zu sponsorn (naja... mehr ein kleiner Obulus oder so).

Beste Grüße aus Hamburg
Nils
NaN

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

Post by NaN »

Noch keine neuen funktionen, aber zunächsteinmal alle bisherigen fehler beseitigt und mit der aktuellen CMS Version 1.5.4 umgesetzt.
Hab übrigens gerade gelesen, dass Calguy für die CMS Version 1.6 bereits ähnliches geplant hat.
Der Kerl ist mir irgendwie unheimlich.
Ist mir immer einen Schritt voraus... ;)

Edit: Hab den Tippfehler in Zeile 119 grad noch behoben...  ::)
Last edited by NaN on Fri Aug 07, 2009 2:14 pm, edited 1 time in total.
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

Sieht schonmal gut aus, NaN :)
nhaack wrote: wäre aber bereit die Entwicklung finanziell zu sponsorn (naja... mehr ein kleiner Obulus oder so).
Lässt sich nicht kaufen, hab mir auch schon die Zähne ausgebissen ;)
NaN

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

Post by NaN »

Foaly* wrote: Lässt sich nicht kaufen, hab mir auch schon die Zähne ausgebissen ;)
Naja, das hier ist etwas, das offenbar von allgemeinem Interesse ist.
Evtl. könnte man sowas tatsächlich mal in den core einbauen.
Wenn ich dafür bezahlt werden und es dann hier kostenlos zum Download bereitstellen würde, dann würde sich der jeweilige "Auftraggeber" doch schon etwas doof vorkommen, oder?

Außerdem interessiert es mich ja selber.
Wenn ich keinen Spaß daran hätte, würde ich es nicht machen.
Verglichen mit meinen derzeitigen beruflichen Aufgaben ist das hier eine willkommene (um nicht zu sagen niveauvolle) Abwechslung.
Mit jedem bisschen, mit dem ich hier helfen kann, lerne ich schließlich selber noch dazu.

Bei speziellen Wünschen, die nur dem jeweiligen "Auftraggeber" nützen, oder extrem aufwendig sind bzw. keinen Spaß machen, sieht die Sache schon ganz anders aus. Da häng ich mich dann nur rein, wenn der Preis stimmt. Da hängen ja dann auch Termine und Erfüllung usw. dran. Solange ich kein Geld dafür verlange, kann ich mir Zeit lassen und wenn ich nicht weiterkomme, sogar aufgeben.
Bin halt kein Programmierer. Kann nicht von vornherein sagen, ob und wie ich es umsetzen kann. Da muss ich auch immer erstmal nachschauen.
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 »

das ist eine schöne Einstellung. Ganz im Sinne des Projektes denke ich! Danke nochmal für die Arbeit.
Darf ich mal ganz unverschämt Fragen was deine "derzeitigen beruflichen Aufgaben" sind?
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

Fände eine normale Erweiterung um tabs schöner, aber naja.. Ansichtssache!

Kleine Fehler:
* In der Zeile 664 dürfte keine textarea sein!
* Die Sache mit Zeile 562ff muss noch dringend behoben werden, da sonst nach dem Neuladen niemals Checkboxen angehakt sind!
Fix:

Code: Select all

case 'checkbox':
{
	$checked = ($data == 'on') ? 'true' : $block['checked'];
	if($block['block_tab']!='') {
Funktioniert wunderbar!

Die Zeilen zwischen der case- und der break-Anweisung brauchst du übriegens nicht zwischen geschweifte Klammern zu stellen, da dort alle Anweisungen bis zum nächsten case und nicht nur eine bzw ein Anweisungsblock gewertet wird!

P.S.: Es bietet sich übriegens an, den Anhang an den Beschreibungsbeitrag anzufügen, damit man du nicht immer den Link aktualisieren musst und man später nicht sucht :)

@dev-team: Hoffe das Ding ist im nächsten Core!!^^
Last edited by Foaly* on Mon Apr 20, 2009 9:46 pm, edited 1 time in total.
NaN

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

Post by NaN »

nicmare wrote: Darf ich mal ganz unverschämt Fragen was deine "derzeitigen beruflichen Aufgaben" sind?
Das darf ich Dir leider nicht verraten.
Sonst müsste ich Dich töten ;)

Nee, im Ernst, bin Redaktionsassistent beim MDR.
Meine Aufgaben beschränken sich derzeit auf Online-Lizenzmanagement...

Foaly* wrote: Fände eine normale Erweiterung um tabs schöner, aber naja.. Ansichtssache!
Darf ich fragen wie das gemeint ist?

Foaly* wrote: Kleine Fehler:
[...]
Danke für den Tipp.
Die geschweiften Klammern mache ich manchmal nur, um nicht die Übersicht zu verlieren.
Manche waren auch schon da.
Oder ich hab nur eine if-Abfrage o.ä. rausgenommen und die Klammern vergessen.
Aber aufräumen muss ich den Code auf jeden Fall noch ein wenig.
Foaly* wrote: P.S.: Es bietet sich übriegens an, den Anhang an den Beschreibungsbeitrag anzufügen, damit man du nicht immer den Link aktualisieren musst und man später nicht sucht :)
Stimmt, hast recht.
 
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

Natürlich darfst du :)

Image
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

Hmm.. Mein Beitrag taucht nicht auf  ::) Wer ihn sehen will: Einmal auf Antworten klicken, dort taucht er in der Diskussionshistorie auf!

Was mir gerade nocht gekommen ist: Schön wäre auch ein Artikelpicker, also ein Artikelfeld, über das (ein) Artikel der Seite ausgewählt werden kann/können. Rückgabe bspw. ein Content Objekt aus dem $gCms.
Last edited by Foaly* on Tue Apr 21, 2009 8:23 pm, edited 1 time in total.
NaN

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

Post by NaN »

Aber das geht doch mit dem Parameter "page_tab".
Foaly* wrote: Hmm.. Mein Beitrag taucht nicht auf  ::) Wer ihn sehen will: Einmal auf Antworten klicken, dort taucht er in der Diskussionshistorie auf!
Ja und da sieht man meinen Beitrag dafür doppelt...
Ich glaube tatsächlich der Forum-Spamfilter ist daran Schuld.
Foaly* wrote: Was mir gerade nocht gekommen ist: Schön wäre auch ein Artikelpicker, also ein Artikelfeld, über das (ein) Artikel der Seite ausgewählt werden kann/können. Rückgabe bspw. ein Content Objekt aus dem $gCms.
Hm, das klingt kompliziert, da das $gCms-Object was Du warscheinlich meinst erst im Frontend existiert.
Im Backend gibts zwar auch eins, aber was da drin steht, nützt dem Frontend wenig.
Last edited by NaN on Tue Apr 21, 2009 8:27 pm, edited 1 time in total.
Foaly*
Translator
Translator
Posts: 150
Joined: Sun Mar 29, 2009 3:32 pm
Location: London

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

Post by Foaly* »

NaN wrote:
Aber das geht doch mit dem Parameter "page_tab".
Wie du siehst, habe ich doch auch erfolgreich Tabs hinzugefügt.. Aber an der "falschen" Stelle!
NaN wrote:
Hm, das klingt kompliziert, da das $gCms-Object was Du warscheinlich meinst erst im Frontend existiert.
Im Backend gibts zwar auch eins, aber was da drin steht, nützt dem Frontend wenig.
Muss ja nicht das $gCms Objekt sein, kann von mir aus auch was anders sein ;) Ein Content Objekt zu einer Id wirst du im Backend sicherlich auch bekommen!


Du solltst langsam mal dein "Projekt" der internationalen Community vorstellen, ist denke ich für viele sehr interessant. Außerdem wirds dann mehr getestet.
Last edited by Foaly* on Tue Apr 21, 2009 8:35 pm, edited 1 time in total.
Locked

Return to “Stammtisch”