Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 27. September 2016 20:22
- 2Cee.de
- probiert CMS/ms aus
- Ort: Dreischor
- Registriert: 09. Mai 2011
- Beiträge: 61
[GELÖST] LISE: title, alias, url automatisieren bzw. entfernen
Hallo zusammen.
Ich hoffe ich habe keinen Beitrag übersehen in dem das Thema schonmal behandelt wurde. Ansonsten sorry und ich nehme gerne den Link zum Thread
Problemstellung:
Ich verwende gerne und für alles mögliche LISE, aber muss jetzt tatsächlich für eine Instanz nur Datum und Uhrzeit ausgeben lassen. Das ist wunderbar zu lösen, allerdings braucht jedes LISE-item einen title, eine url und einen alias.
Da es sich um Listen von Terminen handelt - Tabelle Datum / Uhrzeit - möchte ich dem Kunden nicht zumuten, dass er für jeden einzelnen Termin einen für ihn sinnlosen fiktiven Titel vergeben muss. alias und url würden sich daraus zwar automatisch ergeben, würde aber bedeuten, dass der Kunde hier immer etwas einzigartiges eintragen muss. Das wären sozusagen drei zusätzliche Eingaben pro Termin.
title:
Um es nicht zu kompliziert zu machen, habe ich den Titel einfach zur Eingabe für die Uhrzeit definiert. Das ist nicht besonders elegant, aber würde funktionieren. Schöner wäre ihn optional zu machen, aber ich will mal nicht kleinlich sein
alias / url:
Es gibt keine Detail-Anzeige, weshalb keine url notwendig ist. Der alias ist ebenfalls irrelevant, aber verständlich, dass das System dies braucht.
Mein Frage / Wunsch:
Falls nicht jemand hier eine gute saubere Lösung (oder ein anderes passendes Modul, anderen Ansatz) weiß, würde mir schon reichen, wenn ich irgendwo manipulieren / einrichten könnte, dass es für alias / url sowas wie einen Zähler / Zufallsgenerator gibt. Am besten so, dass der Kunde garnicht mit der Frage danach konfrontiert wird, aber auch automatisch (im Hintergrund) ausgefüllt wäre prima. Also etwas wie die aktuelle Uhrzeit bis zu Sekunden oder etwas ganz fiktives.
Könnte mir vorstellen, dass sich die php-Datei der Instanz dementsprechend anpassen lassen würde, allerdings bin ich dafür nicht tief genug in php drin fürchte ich.
Jemand eine Idee dazu? Das wäre unglaublich klasse. Tausend Dank im Voraus!
Viele Grüße
Christin
System:
1.12 “Pohnpei”
LISE 1.2.1.1
Nebenbei: Mit CGCalendar hätte ich mehr oder weniger die gleiche Problematik und auch in den anderen Listen-Modulen, die ich kenne.
Einfach mit Tiny und Tabellen ist mir auch nicht geholfen, da die Termine an diversen Stellen ausgegeben werden müssen.
Die gleiche Problematik hatte ich vor Jahren schonmal. Damals habe ich für den gleichen Kunden das eine Kategorie des News-Moduls dafür verwendet. Hier muss aber auch ein Titel vergeben werden. Hier reicht wenigstens ein Buchstabe. Trotzdem - und verständlich - war der Wunsch des Kunden für die neue Seite, dass er nicht wieder sinnlos Buchstaben in ein Feld pro Termin eintragen muss. Zudem möchte ich natürlich auch nicht mehr wie früher das News-Modul für alles mögliche "missbrauchen".
Offline
#2 27. September 2016 21:38
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] LISE: title, alias, url automatisieren bzw. entfernen
Nach meinem persönlichen Geschmack ist der Einsatz von LISE für 'ne simple Tabelle Datum+Uhrzeit etwas oversized und unperformant.
Kenne ja deinen Kunden nicht, aber mit Excel wird er ja vermutlich umgehen können ... dort einfach eine Liste zum Ausfüllen bereit stellen, im CSV-Format abspeichern, die Datei dann auf den Server hochladen und dann mit bißl Smarty zur Anzeige bringen.
Aber sei es drum - stecke jetzt auch nicht ganz so tief in LISE drin, als dass ich da weiß, was da wann und wo und wie ausgegeben wird .
Für vorbelegte Felder (also wenn nix eingegeben wurde) gäbe es grundsätzlich den Modifikator default
http://www.smarty.net/docs/en/language. … efault.tpl
Funktioniert aber nur, wenn die vermeintliche Variable wirklich nur eine Variable ist.
Bei CMSMS isses ja aber nicht selten so, dass die Variable ein komplettes input Feld ausgibt. In diesem Fall müsstest du mit dem replace Modifikator ran
http://www.smarty.net/docs/en/language. … eplace.tpl
also einfach den value Wert für das input Feld austauschen.
Da das alles in den Admin Templates des Moduls passieren muss, sei an die custom_module Technik erinnert
https://www.cmsmadesimple.de/forum/viewtopic.php?id=629
Damit könntest du die Backend Templates der LISE Instanz nach Wunsch bearbeiten und im Zweifelsfall für die angesprochenen Bereiche ein style="display: hidden;" für die relevanten bzw nicht gewünschten Bereiche einzufügen, ohne das Modul zu hacken.
Und wenn du aber doch etwas weiter in die PHP-Untiefen der Instanz abtauchen möchtest, sei dir der API-Befehl CreateInputText ans Herz gelegt - gemeint ist damit, im Quellcode die Stelle finden, wo die jeweiligen input Felder mit dem benannten Befehl erzeugt werden, und dann den value Wert mit irgend etwas zufälligem vorbelegen.
http://apidoc.cmsmadesimple.org/classes/CMSModule.html
So zufällig müssten die Werte ja nach meiner Einschätzung zudem auch nicht sein; der Unix Timestamp ist IMHO dafür vollkommen ausreichend .
Offline
#3 27. September 2016 21:58
- 2Cee.de
- probiert CMS/ms aus
- Ort: Dreischor
- Registriert: 09. Mai 2011
- Beiträge: 61
Re: [GELÖST] LISE: title, alias, url automatisieren bzw. entfernen
Wow, danke Cyberman für Deine schnelle und ausführliche Antwort.
Ja, an eine csv habe ich auch schon öfter gedacht, aber dafür hat mir bisher die Kreativität für die Umsetzung gefehlt. Denn es handelt sich um zig Kategorien und zig Seiten wo die verschiedenen Termine angezeigt werden sollen. Daher auch die alte Lösung mit dem News-Modul und jetzt die angedachte mit LISE. Die Termine werden ca. 3 - 4 mal im Jahr aktualisiert.
Eine csv entsprechend und mit allen notwendigen Feldern für die verschiedenen Kategorien anzulegen, wäre definitiv machbar und auch für den Kunden vermutlich angenehmer als die Termine ins System eintragen zu müssen.
Allerdings, wie gesagt, fehlt mir für das "Danach" ("bißl Smarty" wohl Kreativität und Wissen.
Tatsächlich habe ich eben parallel entdeckt, dass man auch in LISE einen Import machen könnte. Das wäre natürlich genial. Bisher scheitere ich noch am richtigen Format der Datei, aber das könnte vielleicht tatsächlich eine praktikable Lösung sein.
Deine Hinweise bzgl. LISE werde ich mir genau anschauen. Mal sehen, wie weit ich damit komme.
Schätze das Forum hier immer sehr. Wünsche mir immer mal jemanden, der solche Spezialwünsche für mich "basteln" könnte. Hast Du (oder jemand anderes hier) grundsätzlich hin und wieder Spaß an solchen (Mini-)Aufträgen?
Offline
#4 28. September 2016 22:27
- 2Cee.de
- probiert CMS/ms aus
- Ort: Dreischor
- Registriert: 09. Mai 2011
- Beiträge: 61
Re: [GELÖST] LISE: title, alias, url automatisieren bzw. entfernen
Nachtrag: Das Importieren einer csv-Datei mit den notwendigen Daten in LISE funktioniert einwandfrei und ist eine herrliche schnelle und saubere Lösung.
Danke!
Offline
#5 28. September 2016 14:08
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] LISE: title, alias, url automatisieren bzw. entfernen
Denn es handelt sich um zig Kategorien und zig Seiten wo die verschiedenen Termine angezeigt werden sollen.
Wie gesagt - made (it) simple .
Würde gar kein so großen Aufriss machen, von wegen zig Kategorien. Für jede Kategorie eine Liste ... ist schnell und performant.
Allerdings, wie gesagt, fehlt mir für das "Danach" ("bißl Smarty"
wohl Kreativität und Wissen.
Ist wirklich nur "bißl Smarty" , ok noch bißl PHP dazu - guckst du hier
{$csv = array_map('str_getcsv', file('test.csv'))}
{foreach $csv as $entry}
<p>Datum: {$entry.0} Uhrzeit: {$entry.1} Uhr</p>
{/foreach}
gerade ausprobiert, direkt im Content eingefügt, macht sich aber besser im Template. Die CSV-Datei
20.10.2016,20:00
11.11.2016,11:11
24.12.2016,17:00
lag hier im root. Ergebnis:
Datum: 20.10.2016 Uhrzeit: 20:00 Uhr
Datum: 11.11.2016 Uhrzeit: 11:11 Uhr
Datum: 24.12.2016 Uhrzeit: 17:00 Uhr
Und mit den eingelesenen Daten lassen sich dann auch bei Bedarf noch filtern (z.Bsp. Vergleich mit aktuellem Datum und dann Anzeige nur zukünftiger Termine). Und das alles ohne zusätzliche Module oder Plugins ...
Beim Anlegen der CSV darauf achten, dass die utf-8 formatiert sind.
Hast Du (oder jemand anderes hier) grundsätzlich hin und wieder Spaß an solchen (Mini-)Aufträgen?
Klar doch, ist das Salz in der CMSMS-Suppe. Standard kann jeder ... gerade an solchen Dingen lässt sich die vielfältige Einsatzfähigkeit doch am besten demonstrieren.
Offline
Seiten: 1