Modul catGallery - Upload Galerie

Addons, die speziell für BlackCat CMS entwickelt wurden/werden
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Modul catGallery - Upload Galerie

Beitrag von DG70 »

In dem Paket aus dem Download catGallery_for_BlackCatCMS-3.0-pr2.zip steht in der modify.tpl in der Zeile 49 das hier:

Code: Alles auswählen

{$image = NULL}
Ist auch eine "alte" Version aus 2019 ... ist da etwas durcheinander geraten?

Code: Alles auswählen

 *   @author			Matthias Glienke
 *   @copyright			2019, Black Cat Development
 *   @link				https://blackcat-cms.org
 *   @license			http://www.gnu.org/licenses/gpl.html
 *   @category			CAT_Modules
 *   @package			catGallery
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Modul catGallery - Upload Galerie

Beitrag von DG70 »

Ahh ... Fehler gefunden. Der Link führt zu einer alten Version auf GitHub, oder?
creativecat hat geschrieben:
Di 9. Nov 2021, 00:11
Perfekt! Danke :-)
Neuer Release

Nur das mit dem DropDown konnte ich nach wie vor nicht nachvollziehen...
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Modul catGallery - Upload Galerie

Beitrag von DG70 »

So hoffentlich die aktuelle Version von GitHub gezogen (aus dem master) und auf frischer BC v1.4 installiert.
Installation ohne Fehler oder Warnungen.
Beim Erstellen einer Modulsektion passiert nun folgendes:

Code: Alles auswählen

Fatal error: Uncaught TypeError: Return value of catGallery::getOptions() must be of the type array or null, string returned in C:\xampp74\htdocs\modules\catGallery\inc\class.catgallery.php:1258 Stack trace: #0 C:\xampp74\htdocs\modules\catGallery\inc\class.catgallery.php(1367): catGallery->getOptions('variant') #1 C:\xampp74\htdocs\modules\catGallery\headers.inc.php(55): catGallery->getVariant() #2 C:\xampp74\htdocs\framework\CAT\Helper\Page.php(3877): require('C:\\xampp74\\htdo...') #3 C:\xampp74\htdocs\framework\CAT\Helper\Page.php(4035): CAT_Helper_Page::_load_headers_inc('C:/xampp74/htdo...', 'backend', 'modules/catGall...', '5') #4 C:\xampp74\htdocs\framework\CAT\Helper\Page.php(1296): CAT_Helper_Page::_load_sections('backend') #5 C:\xampp74\htdocs\framework\CAT\Helper\Page.php(1850): CAT_Helper_Page::getBackendHeaders('start') #6 C:\xampp74\htdocs\framework\functions.php(80): CAT_Helper_Page::getHeaders('backend', 'start') #7 C:\xampp74\htdocs\modules\lib_dwoo\dwoo\plugins\cat\get_page_headers.php(48): get_page_hea in C:\xampp74\htdocs\modules\catGallery\inc\class.catgallery.php on line 1258
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von creativecat »

Das ist sehr gut, wenn das passiert :-D
Ich stell meine Klassen gerade auf strengere Standards um, so dass die Methode klar vorgibt, was sie zurückgeben sollte (wie es in vielen anderen Programmiersprachen bspw. in JAVA der Fall ist). Wenn das nicht der Fall ist, dann gibts eine Fehlermeldung - dann war meine Programmierung "fehlerhaft" bzw. unsauber (was bisher nicht aufgefallen ist).

Schau ich mir an! Sollte schnell behoben sein!
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von creativecat »

So, ist schon behoben. In dem Fall lasse ich mal die Strenge weg, weil entweder ein String oder ein Array zurückgegeben wird.
Du kannst einfach nur die class.catgallery.php ersetzen ;-)
Benutzeravatar
shadowcat
Administrator
Beiträge: 5283
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von shadowcat »

In PHP 8 kann man "mixed" als Rückgabetyp verwenden. In 7.4 bin ich nicht sicher, aber ich glaube, da ging das noch nicht.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von creativecat »

Eigentlich dachte ich, müsste das mit "?array" gehen. Aber scheinbar gibt es Konstellationen, bei denen das nicht funktioniert Ist ja kein Beinbruch, aber ich fände es eben sauberer, wenn ich vordefiniere, was zurückgegeben wird.
Benutzeravatar
shadowcat
Administrator
Beiträge: 5283
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von shadowcat »

Auf jeden Fall! Ich bemühe mich auch darum, das bei neueren Arbeiten überall zu tun.

Du könntest ggfs. an der Stelle statt eines Strings immer ein Array zurückliefern (das halt dann ggfs. nur einen Eintrag hat), aber da ich nicht reingeschaut habe, weiß ich nicht, ob das wirklich eine Option ist. Geht halt nicht immer.

In Perl konnte man schon immer mehrere Rückgabetypen definieren und darauf reagieren, welche davon dann tatsächlich zurück kommt, bzw. beim Aufruf sagen "ich will auf jeden Fall einen Boolean", dafür kann Perl 5 keine strengen Typen. Aber gut, Perl 5 ist aus den 90ern... :lol: Da gab's dann halt entsprechende Module und/oder Tricks, um das hinzukriegen. Daher finde ich das sehr gut, dass das in PHP mittlerweile so gut implementiert ist.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Modul catGallery - Upload Galerie

Beitrag von DG70 »

creativecat hat geschrieben:
Do 11. Nov 2021, 22:11
So, ist schon behoben. In dem Fall lasse ich mal die Strenge weg, weil entweder ein String oder ein Array zurückgegeben wird.
Du kannst einfach nur die class.catgallery.php ersetzen ;-)
Mit PHP 7.4 läuft die Installation sauber durch, auch das Anlegen einer Modulsektion klappt.
Alle Varianten kann lassen sich auswählen und speichern, nur beim SliderPro kommt folgende Meldung:
BlackCat CMS » Administration - PAGES.png
BlackCat CMS » Administration - PAGES.png (20.79 KiB) 2788 mal betrachtet

Allerdings funktioniert das Laden von Bildern (in meinem Fall .jpg) über die Dropzone nicht mehr.
Bild wird angezeigt, aber nicht gespeichert. Folgendes steht in der Console:

Code: Alles auswählen

modify.php?page_id=2:1 

Uncaught SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at Dropzone.success (backend.js:93)
    at Dropzone.emit (dropzone.min.js:27)
    at Dropzone._finished (dropzone.min.js:27)
    at Dropzone._finishedUploading (dropzone.min.js:27)
    at XMLHttpRequest.xhr.onload (dropzone.min.js:27)
Ich hoffe das hilft Dir (?)
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Modul catGallery - Upload Galerie

Beitrag von creativecat »

Seltsam. Ersten Fehler habe ich behoben - wobei es mich wundert, warum der nur beim SliderPro kommt.
Den zweiten Fehler kann ich nicht nachvollziehen. Kannst du mal die Konsole durchsuchen, ob du noch eine Message findest? Da wird offensichtlich HTML rausgehauen, was nicht sein sollte. Wurdest du vielleicht ausgeloggt?

Kannst du es noch mal mit der aktuellen save.php das Ganze testen? Es reicht die eine Datei austauschen.

Danke :-)
Antworten