[NEU] Article List Reloaded (ALR)

Alles rund um Module und Plugins in CONTENIDO 4.9.
homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Mo 24. Aug 2015, 19:42

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

avito
Beiträge: 43
Registriert: Do 15. Mai 2008, 13:14
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von avito » Di 25. Aug 2015, 08:57

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

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

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Do 1. Okt 2015, 22:54

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!

beloved_behated
Beiträge: 55
Registriert: Mi 25. Nov 2009, 16:08
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von beloved_behated » Mi 7. Okt 2015, 15:23

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?

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

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Mi 7. Okt 2015, 15:32

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

beloved_behated
Beiträge: 55
Registriert: Mi 25. Nov 2009, 16:08
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von beloved_behated » Mi 7. Okt 2015, 15:40

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!

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von rethus » Mo 12. Okt 2015, 11:22

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.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

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

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Do 15. Okt 2015, 19:04

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!

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von rethus » Mi 21. Okt 2015, 15:07

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).
Dateianhänge
article-list-reloaded.zip
(33.12 KiB) 130-mal heruntergeladen
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von rethus » Mo 26. Okt 2015, 16:45

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
 ....
...
.
}
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

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

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Mo 26. Okt 2015, 17:58

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

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von rethus » Di 27. Okt 2015, 12:33

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.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

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

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Di 3. Nov 2015, 19:43

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.

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von rethus » Di 24. Nov 2015, 16:08

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).
Zuletzt geändert von rethus am Do 21. Jan 2016, 17:47, insgesamt 1-mal geändert.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

samse
Beiträge: 48
Registriert: Di 1. Sep 2015, 09:05
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von samse » Mo 7. Dez 2015, 15:36

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

Antworten