Seite 7 von 15

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 24. Aug 2015, 19:42
von homtata
Das Einlesen der Templatevorlagen benötigt scanDirectory, und das scheint in 4.9.8 fehlerhaft ausgeliefert worden zu sein.
Bitte versuche, den Fehler gemäß folgendem Link zu beheben:

http://forum.contenido.org/viewtopic.php?f=92&t=36485

und gib bitte kurz bescheid, ob das das Problem löst ;-)
LG
Viktor

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 25. Aug 2015, 08:57
von avito
homtata hat geschrieben:Das Einlesen der Templatevorlagen benötigt scanDirectory, und das scheint in 4.9.8 fehlerhaft ausgeliefert worden zu sein.
Bitte versuche, den Fehler gemäß folgendem Link zu beheben:

http://forum.contenido.org/viewtopic.php?f=92&t=36485

und gib bitte kurz bescheid, ob das das Problem löst ;-)
LG
Viktor
Hallo Viktor.
Genau das wars. Jetzt geht alles perfekt. Ganz lieben Dank für Deine Unterstützung. Und vor allem für Deine Mühe für dieses Modul.
Lg, Tom

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Do 1. Okt 2015, 22:54
von homtata
User rw72 hat einen Fehler gefunden, der die korrekte Anzeige von lastmodified verhindert, siehe http://forum.contenido.org/viewtopic.php?f=89&t=36583.
Dieser und weitere Fehler seit Mai 2015 wurden behoben; ich habe soeben eine neue Version auf die Startseite dieses Threads hochgeladen.
Danke für Euer Mitdenken und Eure Fehlerreports!

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 7. Okt 2015, 15:23
von beloved_behated
Hallo,

bei mir wird leider kein Bild ausgegeben... Habe ein Image-Element in der Konfiguration definiert und auch den entsprechenden Container ausgewählt... aber ich bekomme leider keine Ausgabe...auch nicht im $article Array ..
Kann mir da jemand helfen?

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 7. Okt 2015, 15:32
von homtata
Heyho,

hast du die Variable richtig angesprochen? Wenn z.B. das Bild als 2. Element in der Konfiguration festgelegt ist, dann wird das im Smarty-Template mit

Code: Alles auswählen

article.2_image 
angesprochen. Die Nummer muss stimmen, wie in der Doku beschrieben.

LG

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 7. Okt 2015, 15:40
von beloved_behated
Ja habe es jetzt herausbekommen... Bei mir war es das 4. Element.
Ich dachte die Element-Typen werden durchnummeriert... ein Bild also 1. Element...

Danke! Funktioniert nun!

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 12. Okt 2015, 11:22
von rethus
Hab mir heute mal dein Modul runtergeladen.
Du hast einen Fehler beim Packen gemacht. Wenn ich dein ZIP über Contenido installiere, wird es mit dem Dateinamen installiert, also liegt das Modul in :

Code: Alles auswählen

cms/data/module/Modul CON49 Article List Reloaded_corr09
Damit ist nach Aufruf des Moduls im Backend kein Code im In- und Output-Feld vorhanden.
Der exakte Dateiname wird aber gebraucht, da das Modul im Modul-Unterverzeichnis php/ für input und output auch den Namen des Moduls verwendet.

FAZIT:
Die Zip-Datei muss beim Import zwingend: article-list-reloaded.zip heißen. Damit stimmen dann die Bezeichnungen wieder.

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Do 15. Okt 2015, 19:04
von homtata
Heyho rethus,
das war in dem Fall sogar Absicht, da ich eine Weile mehrere versionierte Downloads anbot. Ich empfehle eh meist: zip entpacken, per FTP hochladen, Modul synchronisieren... Vielleicht ändere ich das mit den nächsten Versionen aber auch bzw. ergänze den Text auf der ersten Seite dieses Threads. Danke für den Hinweis!

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mi 21. Okt 2015, 15:07
von rethus
Verwendet man Module, die z.B. den Template-Ordner des Moduls auslesen sollen muss der Aufruf von scanDirectory gegen folgendes ersetzt werden:

Code: Alles auswählen

$module = new cModuleHandler($cCurrentModule);
$tplFiles = $module->getAllFilesFromDirectory('template');
Hab es hier mal angepasst. Bitte in den ersten Beitrag dieses Threads übernehmen.
PS: Hab bewußt das Package umbenannt, da es sonst nicht sauber mit dem IMPORT passt (siehe meine vorangehenden Postings).

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 26. Okt 2015, 16:45
von rethus
Irgend etwas liegt auch noch beim Modul-Input im Argen.
Habe gerade eine Instanz 4.9.8 mit xdebug am laufen.

Folgende Fehler:

Im Modulinput zeile 136, fehlt den benötigte Parameter für

Code: Alles auswählen

$select = new cHTMLSelectElement("");
Hätte aufgrund der Select_Optionen vermutet, das dort CMS_VAR[106] rein kommt, aber direkt darunter ist ein "hidden textfield", das diesen Wert schon beansprucht ?!?

Und dann ist da noch ein Fehler:
Warning: Database failure: 1064 (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS a WHERE a.parentid = 0' at line 1) -
/contenido/main.php?area=con_tplcfg&action=tplcfg_edit&idart=1365&idcat=58&frame=4&contenido=ckaba1239l123h1all123nn7rt4vetp7

SELECT a.idpica_alloc as idpica_alloc FROM AS a WHERE a.parentid = 0 in /www/contenido/includes/functions.general.php on line 1423
Fehlt offensichtlich die DB die hier verwendet werden soll! Im Sourcecode steht da: $cfg["tab"]["pica_alloc"]

Böse Codestelle 8)
Der gesamte Bereich sollte wohl besser gekapselt werden.

Code: Alles auswählen

if(isset($cfg["tab"]["pica_alloc"])){
 // ist man gerade dabei, dann auch den Include vom Anfang des Sourcecodes mit dort rein [nur laden, wenn benötigt!!!]:
cInclude("module", "functions.input.helper_contentallocation.php"); // Tagging
 ....
...
.
}

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 26. Okt 2015, 17:58
von homtata
Hallo rethus,

danke für deine Vorschläge:
- scanDirectory ist ersetzt wie vorgeschlagen
- Die select-Zeile im Input ist hinfällig und auskommentiert. Das hiddenfield-Gedöns ist hingegen wichtig, damit das Javascript für den Aufbau des Kategoriebaums für zusätzlichen Kategorien funktioniert.
- Der Datenbankfehler rührte nicht aus der von dir gedachten Stelle im Input her, daher ist dort nichts geändert. Der Fehler trat im Moduloutput, Zeile 402 auf, da dort eine Schleife zu oft durchlaufen wurde.
- Der Dateiname ist ab sofort so angepasst, dass der Import über das Modulsystem nun funktionieren sollte, danke für den Hinweis.

LG
Viktor

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 27. Okt 2015, 12:33
von rethus
Hast du dennoch die Abfrage nach der Tagging-Tabelle eingefügt.
Saubere Progarmmierung schließt ja ein, nur Dinge zu laden, die wirklich gebraucht (und auch da) sind, bzw. im Fehlerfall aussagekräftige Exceptions zu werfen usw.
Daher würde ich dich bitten, das mit der Tagging-Abfrage auch noch zu ergänzen.

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 3. Nov 2015, 19:43
von homtata
Nein, das hatte ich noch nicht eingefügt. Ich wollte das nicht blind machen, sondern erstmal testen, ob diese if-Abfrage auch tatsächlich dem entspricht, ob das Tagging-Plugin aktiv ist oder nicht. Hab nochmal ein paar Checks gemacht und werds dann in die nächste Version einfließen lassen. Wichtiger war mir der schnelle Fix für den eigentlichen Fehler.

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Di 24. Nov 2015, 16:08
von rethus
Hier ein Verbesserungsvorschlag um die Fehleranfälligkeit zu minimieren und die Übersicht zu verbessern.
Im ALR-Moduloutput ab Zeile 409 anstatt:

Code: Alles auswählen

$sTmpValue = urldecode($db3->f('value'));
$regEx = "/<img[^>]*?>.*?/i";
$match = array();
preg_match($regEx, $sTmpValue, $match);

$regEx = "/(src)(=)(['\"]?)([^\"']*)(['\"]?)/i";
$img = array ();
preg_match($regEx, $match[0], $img);

$img_src = preg_split("/\//", $img[0]);
$img_name = $img_src[count($img_src) - 1];
$img_name = preg_replace("/\"/", "", $img_name);

$name = strtolower($img_name);
 

Code: Alles auswählen

$sTmpValue = urldecode($db3->f('value'));
$regEx = "/<img[^>]*?>.*?/i";
$match = array();
preg_match($regEx, $sTmpValue, $match);

$doc = new DOMDocument();
@$doc->loadHTML($match[0]); // @ prevent warning-messages to fillup logs.
$imageTags = $doc->getElementsByTagName('img');

foreach($imageTags as $tag) {
    $img_Psrc = $tag->getAttribute('src');
}

$img_P = pathinfo($img_Psrc);
$name = strtolower($img_P['basename']);
 
Vorteil ist, das ohne fehleranfällige regexp über das DOMDocument-Funktionen direkt auf ein Elementtyp (getElementByTagName, oder sogar per ID (getElementsById) zugegriffen werden kann. Dies macht es möglich ggf. ALR noch einfacher zu erweitern (IDEE aus dem Stehgreif: hat ein IMG-Element die ID : ALR-SPLASH, wird dies anstatt das erste Image im Text genutzt).

Re: [NEU] Article List Reloaded (ALR)

Verfasst: Mo 7. Dez 2015, 15:36
von samse
Hi Zusammen

Ich kann mit dem neuen ALR keine Bilder mehr ausgeben mit der Contenido Version 4.9.8.
Habe das Modul importiert und einen Beispielartikel erstellt.
Dann versuche ich die Headline und das Bild auszugeben. Die Headline wird angezeigt, aber das Bild nicht.
Das Bild ist als Elemet 1 definiert als müsste ich es doch mit folgendem Code rausbekommen:

Code: Alles auswählen

{$article.1_img}
Habe es auch damit versucht:

Code: Alles auswählen

{$article.1_image}
Aber leider kommt da nichts... kann sich das bitte jemand mal anschauen?

Mit der alten Version von ARL funktioniert es tadellos. Habe es gerade getestet, aber mit der neuen version hier im Forum nicht.

Grüsse
Samse