[Neues Modul] Terminliste v3

Alles rund um Module und Plugins in CONTENIDO 4.9.
Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Monatsstrukturierung

Beitrag von Horst1234 » Fr 6. Mai 2016, 16:35

Hallo Homtata,
super, dass es dieses Modul jetzt auch für 4.9. gibt !!!
Was ich z.Z. noch sehr vermisse aus dem alten Modul war diese wunderbare Monatssortierung (alle Januartermine unter dem Monatsbalken "Januar" etc).
Ist das schwierig nachzubauen mit dem neuen Smarty-Template? Magst du mal Tipps geben :idea:
Merci,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » Sa 7. Mai 2016, 09:11

Ich bin schon wieder ein bisschen raus aus der genauen Programmierung, aber ich würde vermutlich so vorgehen: da der Echtname des Monats ja auch in einer Variable je Termin abgespeichert wird, würde ich mir in der foreach-Schleife in Smarty den aktuellen Wert in eine Variable speichern und dann im nächsten Durchlauf prüfen, ob der zuvor gespeicherte Namen mit der aktuellen Variable im Array identisch ist. Wenn nein, dann den aktuellen Monatsnamen hinschreiben, wenn ja, dann nicht ausgeben.

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Sa 7. Mai 2016, 11:12

Hallo Homtata,
könntest du das, falls das nicht zu aufwändig ist, an einem Beispiel inklusive Formatierungspartikel (div etc) mal aufzeigen, ich bin nur HTML-/CSS-programmierbewandert.
Danke,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » So 8. Mai 2016, 10:50

Also hier mal ein ungetesteter Vorschlag, wie das results_success.tpl vermutlich anzupassen wäre, um das hinzukriegen. ABER: Smarty ist echt kein Hexenwerk, ihr müsst euch da auch mal ein bissel einfrickeln, indem man mal Modultemplates anschaut. Außerdem liefere ich ja eine komplette Liste von Variablen mit, die sich ausgeben und abgleichen lassen - da kommt man dann mit einfachen foreach- und if-Befehlen auch als recht blutiger Anfänger schon recht weit.

Nun aber, hier der Code:

Code: Alles auswählen

<style>
	
	.events {
		border-top: 1px solid #cccccc;
	}	
	
	.event {
		border-bottom: 1px solid #cccccc;
		padding-bottom: 20px;
	}
	
	.event h2 {
		font-size: 18px;
		padding: 20px 0;
	}
	
	.event .termintext {
		padding: 10px 0;
	}
	
</style>


{if $MOD.display}

	{if $errors} 
	
	<ul class="errors">
		
		{foreach from=$errors item=error}
		<li class="error">{$error}</li>
		
		{/foreach}
	</ul>
	{/if}
	
	{if $success} 
	
	<ul class="success">
		
		{foreach from=$success item=sucmsg}
		<li class="success">{$sucmsg}</li>
		
		{/foreach}
	</ul>
	{/if}
	
	<div class="events">
	
		{assign var="prevmonth" value=""}
		
		{foreach from=$termine item=termin}
		
		
		
		<div class="event {$termin.highlight}">
		
		{if $prevmonth neq $termin.date1_monthfull}
			<div class="">$termin.date1_monthfull $termin.date1_yearfull</div>
		{/if}
		
		{assign var="prevmonth" value=$termin.date1_monthfull}
		
			<h2>{$termin.titel}</h2>
			{if !($termin.groupeddate)} 
			<p>[Datum/Date] {$termin.date1_lang}
				{if !($termin.oneday or $termin.datum2 eq "")} - {$termin.date2_lang} {/if}
			</p>
			{/if}
			{if $termin.image != "" }
			<img src="{$termin.imagefullpath}" alt="{$termin.description}" title="{$termin.medianame}">
			{/if}
			
			<p>[Ort/Venue] {$termin.ort}</p>
			
			<div class="termintext">{$termin.text}</div>      
			<p><a href="{$termin.link}" target="{$termin.linkframe}" class="">{$termin.linkdesc}</a></p>
		</div>
		{/foreach}
		
	</div>
	
	{else}
	<p>Module deactivated.</p>

{/if}

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Mo 9. Mai 2016, 08:59

Super, das klappt,
vielen Dank!
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » So 15. Mai 2016, 21:38

Hallo Homtata,
plötzlich zerschießt es mir die Zeitangaben, mal kommt nichts, dann kommt endlich eine Zeitangabe, und die wiederhohlt sich dann aber für alle weiteren Termine, obwohl ich andere Zeiten angebe. Ich arbeite mit CON 4.9.9, teste im Demomandanten und habe alle Ersetzungen durchgeführt, die du hier aufgelistet hast. Systemintegrität ist perfekt.

Die letzten Errorlogs sind:

Code: Alles auswählen

[15-May-2016 22:24:34 Europe/Berlin] PHP Warning:  DOMDocument::loadXML() [<a href='domdocument.loadxml'>domdocument.loadxml</a>]: Empty string supplied as input in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:24:34 Europe/Berlin] PHP Warning:  simplexml_import_dom() [<a href='function.simplexml-import-dom'>function.simplexml-import-dom</a>]: Invalid Nodetype to import in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:24:34 Europe/Berlin] PHP Warning:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:24:34 Europe/Berlin] PHP Warning:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:26:02 Europe/Berlin] PHP Warning:  DOMDocument::loadXML() [<a href='domdocument.loadxml'>domdocument.loadxml</a>]: Empty string supplied as input in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:26:02 Europe/Berlin] PHP Warning:  simplexml_import_dom() [<a href='function.simplexml-import-dom'>function.simplexml-import-dom</a>]: Invalid Nodetype to import in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:26:02 Europe/Berlin] PHP Warning:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:26:02 Europe/Berlin] PHP Warning:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in /usr/www/users/freieq/__test/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 149
[15-May-2016 22:26:35 Europe/Berlin] PHP Warning:  Missing argument 1 for cHTMLSelectElement::__construct(), called in /usr/www/users/freieq/__test/contenido/includes/include.tplcfg_edit_form.php(331) : eval()'d code on line 226 and defined in /usr/www/users/freieq/__test/contenido/classes/html/class.html.selectelement.php on line 53
[15-May-2016 22:27:28 Europe/Berlin] PHP Warning:  Missing argument 1 for cHTMLSelectElement::__construct(), called in /usr/www/users/freieq/__test/contenido/includes/include.tplcfg_edit_form.php(331) : eval()'d code on line 226 and defined in /usr/www/users/freieq/__test/contenido/classes/html/class.html.selectelement.php on line 53
[15-May-2016 22:27:50 Europe/Berlin] PHP Warning:  Missing argument 1 for cHTMLSelectElement::__construct(), called in /usr/www/users/freieq/__test/contenido/includes/include.tplcfg_edit_form.php(331) : eval()'d code on line 226 and defined in /usr/www/users/freieq/__test/contenido/classes/html/class.html.selectelement.php on line 53
Hast du eine Idee,
ciao,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » Di 17. Mai 2016, 14:08

Hallo Horst,
tut mir leid, so einfach kann ich das nicht eingrenzen - da doch einiges zusammenlaufen muss bis zum Output, kann ich so adhoc nicht sagen, wo jetzt der Fehler sein könnte - ob ihm Modul, in deinen Eingaben... echt schwierig.
In MEINER Version der 4.9.9 im Demomandanten stimmen die Ausgaben bei 6 Terminen bei der Listenausgabe. Alle unterschiedlichen Datumsangaben werden korrekt ausgelesen. Da du ja offensichtlich auch mit anderen Modulen (Dynamic Content) erhebliche Probleme hast, vermute ich eher mal, dass deine 4.9.9 irgendwie einen Schuss hat und nicht ganz korrekt läuft.

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Di 17. Mai 2016, 14:17

Hallo Homtata,
vielen Dank erstmal. Dann muss ich wohl den "langen Weg" gehen und die Installation noch mal aufbauen. Ich geb Bescheid, wo es dann aussetzt.
Gruß aus Bremen,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Mo 13. Jun 2016, 12:52

Hallo Homtata,
ich konnte den oben entstandenen Fehler nicht mehr reproduzieren, was ja auch nicht schlecht ist ;-) Ich hab die Installation neu aufgesetzt und dann lief alles wie gewünscht.
Ich hab aber noch eine weitere Frage: kann es sein, dass man das Modul nicht zweimal auf einer Seite einsetzen kann?
Wenn ich es zweimal einbinde, werden zwar beide Terminlisten angezeigt, aber nach der 2.Liste bricht der HTML-Code komplett ab.
Hast du eine Ahnnug, woran das liegen könnte?
Grüße,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » Mo 13. Jun 2016, 13:57

Ich wills nicht ausschließen, dass der Mehrfacheinsatz hakt.. vielleicht liegts an den eingebundenen Dateien im Input oder Output, wenn mehrfach die identische Datei inkludiert wird oder sowas. Aber wenn der Code erst NACH der Liste abbricht und nicht während oder vor der zweiten Liste, dann liegt das Problem glaub ich irgendwo anders... Kannst du mir mehr sagen?

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Mo 13. Jun 2016, 17:14

Gerne, es handelt sich um eine 4.9.9'er-Version und im Errorlog kommt, wenn ich das Modul zum 2. Mal einbaue:

Code: Alles auswählen

[13-Jun-2016 18:04:03 Europe/Berlin] PHP Fatal error:  Cannot redeclare getMetaData() (previously declared in /usr/www/users/szutrb/contenido/includes/include.con_editcontent.php(499) : eval()'d code:24) in /usr/www/users/szutrb/contenido/includes/include.con_editcontent.php(499) : eval()'d code(473) : eval()'d code on line 22
[13-Jun-2016 18:04:04 Europe/Berlin] PHP Fatal error:  Cannot redeclare class sKalender in /usr/www/users/szutrb/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 185
[13-Jun-2016 18:04:12 Europe/Berlin] PHP Warning:  array_multisort(): Array sizes are inconsistent in /usr/www/users/szutrb/contenido/includes/include.con_editcontent.php(499) : eval()'d code(473) : eval()'d code on line 40
[13-Jun-2016 18:04:12 Europe/Berlin] PHP Fatal error:  Cannot redeclare class sKalender in /usr/www/users/szutrb/contenido/includes/include.con_editcontent.php(499) : eval()'d code(473) : eval()'d code on line 40
[13-Jun-2016 18:04:13 Europe/Berlin] PHP Fatal error:  Cannot redeclare class sKalender in /usr/www/users/szutrb/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 185
[13-Jun-2016 18:04:13 Europe/Berlin] PHP Fatal error:  Cannot redeclare class sKalender in /usr/www/users/szutrb/contenido/includes/frontend/include.front_content.php(750) : eval()'d code on line 185
Dateianhänge
termin.JPG
Einstellungen in der Konfiguration
(125.39 KiB) Noch nie heruntergeladen
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » Mo 13. Jun 2016, 17:59

yep, dafür geht bitte in das Modul für die Terminausgabe, dort in den Ausgabebereich. Die Klasse "sKalender" wird mehrfach aufgerufen, inkl. aller Funktionen, das produziert den Fehler. Umklammere die Funktion bitte mit einer if-Abfrage.
Zunächst ergänze bitte ab ca. Zeile 723 den Code wie folgt:

Code: Alles auswählen

/*** classes **/

if ( !class_exists(sKalender) ) {

class sKalender
{
und schließe das am Ende mit einer zusätzlichen geschweiften Klammer ab:

Code: Alles auswählen

		return $MOD_TL_val;
	}
}
}

?> 
Dann müsste es eigentlich klappen. Bericht bitte! :-)

Horst1234
Beiträge: 366
Registriert: Sa 25. Okt 2008, 12:45
Wohnort: Bremen
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Horst1234 » Mo 13. Jun 2016, 18:14

Hallo Homtata,
das war es !!! Nun klappt's super, danke für die schnelle Antwort.
Gruß aus Bremen,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de

Peer
Beiträge: 309
Registriert: Fr 9. Sep 2005, 17:22
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von Peer » Mo 18. Jul 2016, 22:47

Hallo,

habe das Modul installiert.
Ich bekomme es irgendwie nicht mit der Termin-Liste hin.

Es scheint auch an andere Stelle zu hacken.
Gibt es eine überarbeitete Version ?

Vielen Dank

Gruß

Peer

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [Neues Modul] Terminliste v3

Beitrag von homtata » Di 19. Jul 2016, 10:40

Hallo Peer,
die hochgeladene Version ist die, die bei mir in verschiedenen Installationen läuft - es hakt nicht grundsätzlich. Es wäre schon schön, wenn du mal eine genauere Beschreibung geben könntest, WO es denn GENAU hakt bei den ZWEI Modulen... Ansonsten ist das wie "Hallo Werkstatt, ich glaub mein Auto spinnt, was könnts denn sein?"

- Contenido-Version?
- Welche Schritte hast du unternommen bei der Modulinstallation?
- Wie hast du es eingebunden?
- Siehst du die Termineingabe?
- Hakt es nur bei der Terminausgabe? Was hast du konfiguriert? Screenshots?

usw.

Antworten