Seite 2 von 9

Monatsstrukturierung

Verfasst: Fr 6. Mai 2016, 16:35
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: Sa 7. Mai 2016, 09:11
von homtata
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.

Re: [Neues Modul] Terminliste v3

Verfasst: Sa 7. Mai 2016, 11:12
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: So 8. Mai 2016, 10:50
von homtata
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}

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 9. Mai 2016, 08:59
von Horst1234
Super, das klappt,
vielen Dank!

Re: [Neues Modul] Terminliste v3

Verfasst: So 15. Mai 2016, 21:38
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: Di 17. Mai 2016, 14:08
von homtata
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.

Re: [Neues Modul] Terminliste v3

Verfasst: Di 17. Mai 2016, 14:17
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 13. Jun 2016, 12:52
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 13. Jun 2016, 13:57
von homtata
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?

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 13. Jun 2016, 17:14
von Horst1234
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

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 13. Jun 2016, 17:59
von homtata
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! :-)

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 13. Jun 2016, 18:14
von Horst1234
Hallo Homtata,
das war es !!! Nun klappt's super, danke für die schnelle Antwort.
Gruß aus Bremen,
Horst

Re: [Neues Modul] Terminliste v3

Verfasst: Mo 18. Jul 2016, 22:47
von Peer
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

Re: [Neues Modul] Terminliste v3

Verfasst: Di 19. Jul 2016, 10:40
von homtata
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.