Seite 5 von 15

Re: [NEU] Article List Reloaded (ALR)

Verfasst: So 9. Nov 2014, 11:27
von rethus
Gebe das Zeichen direkt als HTML-Sonderzeichen ein: +


http://www.millin.de/downloads/3-935922 ... chhtml.htm

Re: [NEU] Article List Reloaded (ALR)

Verfasst: So 9. Nov 2014, 15:15
von benja
Danke, das habe ich schon probiert. Der Tiny macht daraus wieder ein normales +

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 18. Nov 2014, 18:53
von homtata
Hallo benja,

so, ich konnte es eingrenzen und kann dir eine Lösung bieten, weiß aber nicht, wie sich das auf sonstige Sonderzeichen und ähnliches auswirkt. Ersetze bitte den Code der folgenden Zeilen mit demn un neuen Inhalt, wobei die letzte Zeile wie jetzt gezeigt auch auskommentiert sein muss. Da je nach Version die Zeilenzahlen anders sind, kann ich dir nur sagen, dass es ungefähr im Bereich von Zeile 470ff sein müsste.

Code: Alles auswählen

						$article[$k."_text_full"]         = $db3->f('value');
						$article[$k."_text_strippedabit"] = str_replace('  ', ' ', preg_replace('/\r/s', '', preg_replace('/\n|\t/s', ' ', strip_tags($db3->f('value'), $aSettings['k'.$k]['ElementAllowedTags']))));
						$article[$k."_text_stripped"]     = strip_tags($db3->f('value'));
                                                $article[$k."_text_cut"]          = capiStrTrimAfterWord($article[$k."_text_stripped"], $aSettings['k'.$k]['ElementWidth']).'...';
					
						if ( $aSettings['k'.$k]['DontStripTags'] ) {
							if ( strlen($aSettings['k'.$k]['ElementAllowedTags']) != 0 ) {
								$article[$k."_text"] = $article[$k."_text_strippedabit"];
							} else {
								$article[$k."_text"] = $article[$k."_text_full"];
							}
						} else {												
							if ( $aSettings['k'.$k]['ElementWidth'] > 0 && strlen($article[$k."_text_stripped"]) > $aSettings['k'.$k]['ElementWidth'] ) {
								$article[$k."_text"] = $article[$k."_text_cut"]; 
							} else {
								$article[$k."_text"] = $article[$k."_text_stripped"];
							}						
						}

						//$article[$k."_text"] = text2utf8( $article[$k."_text"] , false , $aSettings['UseUTF8Decoding'] );

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 18. Nov 2014, 19:36
von benja
Danke :-) Ich teste das sobald ich die Zeit dafür finde und melde mich dann.

Article List Reloaded (ALR): active

Verfasst: Mi 14. Jan 2015, 12:41
von JuePoe
Hallo, alle,
ich möchte gern den aktiven Link angezeigt lassen, aber mit einem CSS-Inline-style 'active' versehen.
Dazu habe ich dem Smarty-Template eine Var hinzugefügt:

Code: Alles auswählen

$listObj->currentarticle
Die idart der aktuellen Seite wird ja auch im Code erzeugt:

Code: Alles auswählen

$thisidart
Aber ich finde in dem $article-Array nicht die idart der Liste.
Wie kann ich also die Idart der Link-Liste holen?

Damit würde der folgende Code funktionieren:
$listObj->currentarticle = ($thisidart == xxxy?' class="active"':'');
und im Template:
<h2><a href="{$article.link}" {$listObj->currentarticle}>{$article.headline}</a></h2>
Vielen Dank
Beste Grüße
Jürgen

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 14. Jan 2015, 14:52
von homtata
Schnellschussversuch.. dafür müsstest du im Quellcode des Moduloutputs ungefähr bei Zeile 286 den Code wie folgt erweitern (erste Zeile original, zweite Zeile neu):

Code: Alles auswählen

$article['link'] = cUri::getInstance()->buildRedirect($aParams);
$article['idart'] = $db2->f('idart'));
und noch die gerade gültige idart auch übergeben im Modul, ca. Zeile 740 bei den anderen gleichartigen Übergaben:

Code: Alles auswählen

$tpl->assign('realidart', $idart);
Du kannst dann mit diesen beiden Variablen im Smarty in der Schleife arbeiten und dort die if/else-Geschichte machen:

Code: Alles auswählen

        {if $article.idart==$realidart}
            {assign var="activeclass" value='active'}
        {else}
            {assign var="activeclass" value=''}
        {/if}
und dann darauf zuweisen:

Code: Alles auswählen

<h2><a href="{$article.link}" class="{$activeclass}">{$article.headline}</a></h2>
So ungefähr sollte das hinhauen...

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 14. Jan 2015, 17:48
von JuePoe
Prima.
Klappt – nachdem ich den Template-Code

Code: Alles auswählen

 {if $article.idart==$realidart} usw.
in die foreach-Schleife geschoben habe.
in der Schleife arbeiten
habe ich dann auch gefunden.

Perfekt. Danke
Jürgen

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 14. Jan 2015, 21:55
von homtata
Freut mich, dass es geklappt hat.

Ich habe neue Modulversionen hochgeladen (Seite 1) und auch diese Änderungen mit einfließen lassen - aus Fortschreibungsgründen heißt die neue Variable nun aber

Code: Alles auswählen

$article['articleid']
Bitte beachten, falls du das Modul je updatest.

Ebenfalls neu: eine Version, mit der auch Artikellisten für Tagging/Content Allocation jetzt möglich sind.

ALR mehrfach einbinden klappt nicht

Verfasst: Mo 26. Jan 2015, 13:02
von Horst1234
Hallo,
ich kann die aktuelle Version (corr.6) in CONTENIDO 4.9.6 gut einbinden, aber sobald ich es zweifach einbinden möchte, ist im Backend die Seite komplett weiss.
Selbst wenn ich in Vorlage oder der Seitenkonfiguration das zweite ALR inaktiv stelle, bleibt alles leer. Erst wenn ich in der Vorlage das 2.ALR wieder rausschmeisse,
funktioniert das einzelne wieder wunderbar. (Systemintegrität ist perfekt, das System ist ein Upgrade von 4.8.20 auf 4.9,6)

Nach längerem Arbeiten wird auch einfach der Output-PHP-Code gelöscht. Reinkopieren geht nicht, im Backend wird der Output-PHP-Code nicht angezeigt.
Via FTP kann ich ihn wieder reinkopieren, nach der Synchronisation funktioniert's wieder - nur wie lange bis zum nächsten Löschen?

In den Errorlogs gibts recht umfangreiche Fehlermeldungen, die sich auf die Datenbank beziehen. Zu finden unter -> http://www.regina-busch-ensemble.de/errorlogs.txt

Grüße aus Bremen,
Horst

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 26. Jan 2015, 20:18
von homtata
Hallo Horst1234,

ganz herzlichen Dank für diesen Hinweis. Das Modul stürzte seit Einbau des Tagging tatsächlich in der genannten Kombination ab. Der Fehler sollte durch corr07 behoben sein, ich habe diese soeben hochgeladen.

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 27. Jan 2015, 09:57
von Horst1234
Hallo Homtata,
super, jetzt klappt wieder das Mehrfacheinbinden, vielen Dank.
Die fehlende Modul-Outputdarstellung im Backend ist nach wie vor verwirrend, hat das was mit deinem Modul zu tun?
Ich sende dir gerne den Zugang, falls du dir das anschauen möchtest ...
Grüße aus Bremen,
Horst

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 27. Jan 2015, 11:40
von homtata
Ich vermute, das hat wieder mal was mit dem UTF8-Gedöns zu tun... kannst mir die Daten gern mal per PN schicken, dann schau ich mal, ob ich kurz Zeit finde.
Passiert das nur im ALR oder auch bein anderen Modulen?

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 27. Jan 2015, 11:49
von dermicha
Hallo Horst,
kann es sein, dass im Modulverzeichnis unter php der Moduloutput einen anderen Dateinamen als den Modulnamen hat?

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 27. Jan 2015, 12:37
von Horst1234
Hallo Homtata,
das Modulverzeichnis funktioniert insgesamt nicht besonders gut, z.B. nach einer Synchronisation bekommt man keine Rückmeldung.
Probleme sind auch mit anderen Modulen aufgetaucht, konnte ich aber meist immer irgendwie wieder lösen.
Ich schick dir per PN die Zugnagsdaten,
Vielen Dank,
Horst

Hallo Micha,
im Modulverzeichnis unter php stimmen die Namen mit dem Modulnamen überein, gibt's vielleicht Probleme mit Bindestrichen?
Ich hab das Modul "article-list-reloaded" genannt...
Vielen Dank,
Horst

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Do 26. Feb 2015, 12:36
von rethus
Nochmal zum Thema fehlendes + in der Überschrift (weil ich gerade genau das gleiche Problem hab :|
homtata hat geschrieben:

Code: Alles auswählen

//$article[$k."_text"] = text2utf8( $article[$k."_text"] , false , $aSettings['UseUTF8Decoding'] );
Hier liegt der Hund begraben. Weil text2utf8() etwas macht, was es nicht machen soll. In der Funktion ist ein urldecode mit eingebaut... dies hat aber nichts mit der decodierung von UTF-8 zu tun.
Ich finde es sauberer, wenn text2utf8 so umgebaut wird, dass es auch wirklich nur utf8 decodierung vornimmt.
Die Luxusvariante könnte ja nach vorkommen von URL-Codierten Strings "wie %20 etc." suchen und ne Fehlermeldung in die Logs schreiben, wobei ich dass nicht mal für notwendig halte.

Bei mir war ausser deinen Anpassungen noch eine Anpassung in Zeile 344 notwendig.
Zur Orientierung wegen dem Zeilenversatz, es ist die Zeile nach:

Code: Alles auswählen

$article['summary_full']  = text2utf8( $db2->f('summary') , false , $aSettings['UseUTF8Decoding'] );
			$article['summary_trimmed']  = capiStrTrimAfterWord($article['summary_full'], $aSettings['SummaryWidth']).'...';
			$article['summary']  = ($aSettings['SummaryWidth'] > 0 && strlen($article['summary_full'] ) > $aSettings['SummaryWidth'] ) ? $article['summary_trimmed']  : $article['summary_full'] ;

                        // Generate pagetitle
			$article['pagetitle_full'] = text2utf8( $db2->f('pagetitle') , false , $aSettings['UseUTF8Decoding'] );
			$article['pagetitle_trimmed'] = capiStrTrimAfterWord($article['pagetitle_full'], $aSettings['PageTitleWidth']).'...';
                        $article['pagetitle'] = ($aSettings['PageTitleWidth'] > 0 && strlen($article['pagetitle_full'] ) > $aSettings['PageTitleWidth'] ) ? $article['pagetitle_trimmed'] : $article['pagetitle_full'] ;

                        // Generate headline
Habs geändert von :

Code: Alles auswählen

	$article['headline_full'] = text2utf8( $db2->f('headline') , false , $aSettings['UseUTF8Decoding'] );
in

Code: Alles auswählen

	
	$article['headline_full'] = html_entity_decode(strip_tags( $db2->f('headline') ), $aSettings['UseUTF8Decoding'] );