WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

Du bist nicht angemeldet.

#1 10.11.2017 17:24:18

tomno399
Gast

Another Image Gallery

Ich weiß nicht, ob das gern gesehen wird, deshalb bitte diesen Beitrag löschen, falls ich gegen irgendeine Regel verstoße:

Obiges Modul habe ich noch unter WB jahrelang gern zwischen WYSIWYG-Abschnitten verwendet, zumal es auch responsive ist. Ich habe darin die veralteten "eregi() und ereg_replace()" -Befehle ersetzt, so dass das Modul nun auf WBCE 1.3 ohne Warnungen und Errors läuft! Die info.php habe ich nicht geändert (ich weiß nicht, was man da alles reinschreiben muss).

Ob das Modul "übergeordneten" Anforderungen entspricht und ob es sicher ist, müssen andere beurteilen.

@Florian, wenn nichts dagegen spricht, kannst du es gern in den Addon-Bereich schieben.

Liked by:

bernd

#2 10.11.2017 17:45:20

florian
Administrator

Re: Another Image Gallery

Das ist durchaus gern gesehen und verstößt auch gegen keine Regeln. Vielen Dank dafür!

Was mir beim kurzen Testen aufgefallen ist: Auch dieses Modul verträgt sich nicht mit der Outputfilter-Einstellung "Relative URLs im Frontend"

Sinnvoll wäre noch, die Versionsnummer um eins zu erhöhen (2.3), sofern noch nicht geschehen.


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#3 10.11.2017 18:11:23

tomno399
Gast

Re: Another Image Gallery

florian schrieb:

sofern noch nicht geschehen.

Wie gesagt, ich bin kein Fachmann, "bastle" aber gern. In der info.php steht noch so viel anderer Kram, da habe ich dann lieber die Finger davon gelassen.

#4 10.11.2017 18:36:08

florian
Administrator

Re: Another Image Gallery

So, ich hab's mal auf 2.3 hochgesetzt und im AOR ergänzt.
https://addons.wbce.org/pages/addons.ph … em&item=94


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#5 10.11.2017 20:35:27

bernd
Developer

Re: Another Image Gallery

Klasse, habe die "früher" auch gerne verwendet, weil so schön unkompliziert, vor allem wenn man Gallerien von vornherein schon per FTP befüllt.

Kleiner Schönheitsfehler:
momentan werden nur die Bild-Dateiendungen in Kleinschreibung berücksichtigt.
Vielleicht noch in der view.php Zeile 64ff so abändern:

$jpg = '\.jpg$|\.jpeg$|\.JPG$|\.JPEG$';
$gif = '\.gif$|\.GIF$';
$png = '\.png$|\.PNG$';

... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

#6 17.11.2017 10:41:03

tomno399
Gast

Re: Another Image Gallery

Bernd, danke für die Verbesserung, nun ist die Klein- und Großschreibung möglich.

Darüber hinaus habe ich die Colorbox eingebunden. Sie funktioniert im Backend auf der Seite "Bildergalerie Einstellungen" mit dem Schalter "Bilder im Inhaltsbereich anzeigen". Ist dort ein Haken gesetzt, funktioniert die Gallerie ohne Colorbox. Ohne Haken werden die Bilder gruppiert und in der Box angezeigt. Alle anderen Schalter funktionieren ohne Colorbox wie bisher.

Die info.php habe ich auf die Version 2.4 erhöht. Im Anhang ist die neue Version.

Abschließend möchte ich die Vorteile der "Another Image Gallery" hervorheben:

This "Another Image Gallery" shows all images wich are uploaded in a specified media folder. You have to upload pics in the media folder or you can use ftp for a lot of pics. It shows all images in a folder and its fubfolders (could be turned of or on). Creates automaticly Thumbnails (size, number of pics per page and thumbsdirname free choosable)

#7 17.11.2017 11:24:01

florian
Administrator

Re: Another Image Gallery

Danke, ich habe den Eintrag im Add-On-Repository aktualisiert.


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#8 17.06.2018 09:01:22

rolfp
Mitglied

Re: Another Image Gallery

Hallo,

weiß nicht, ob das hier her gehört, aber ich habe das Problem, dass bei meinen eingebundenen Bildern die Thumbnails teilweise die falsche Orientierung haben.
Durch Hinzufügen der exif Erkennung ließ sich das lösen:
           

	if ($original) {
					if (function_exists('getimagesize')) {
						list($width, $height, $type, $attr) = getimagesize($file);
						$exif = exif_read_data($file);
						if(!empty($exif['Orientation'])) {
							switch($exif['Orientation']) {
								case 8:
									$original = imagerotate($original,90,0);
									$tmpor = $width;
									$width = $height;
									$height = $tmpor;
									break;
								case 3:
									$original = imagerotate($original,180,0);
									break;
								case 6:
									$original = imagerotate($original,-90,0);
									$tmpor = $width;
									$width = $height;
									$height = $tmpor;
									break;
							}
						}
					} else {
						continue;
					}

Wie man das offiziell wo einstellt weiß ich leider nicht.

Beitrag geändert von florian (17.06.2018 17:12:42)

Offline

Liked by:

florian

#9 17.06.2018 17:15:01

florian
Administrator

Re: Another Image Gallery

Cool, danke für die Anregung. Das ist sicherlich auch für andere Galerien von Interesse.

(ich hab in Deinem Post mal Syntaxhighlighting eingefügt)


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#10 20.06.2018 13:07:10

rolfp
Mitglied

Re: Another Image Gallery

Nach verschiedensten Aufrufen mit verschiedenen Browsern hat es mich dann komplett zur Verzweiflung gebracht.
Die finale Lösung war das oben beschriebene wieder zu entfernen und eine Routine einzubauen um das Originalbild zu drehen.
!!! Ich ändere das Originalbild, also bitte eine Sicherheitskopie der Bilder erstellen !!!
Es werden nur Bilder angefasst, für die es kein Thumbnail gibt.
Die Funktion irgendwo am Anfang einfügen:

[== PHP ==]
//Rotate images according to exif orientation 
if(!function_exists("gd_auto_rotate")){
    function gd_auto_rotate($original_file,$exif_orientation){
        $original_extension = strtolower(pathinfo($original_file, PATHINFO_EXTENSION));
		if($exif_orientation=='3' or $exif_orientation=='6' or $exif_orientation=='8'){
			$new_angle[3] = 180;
			$new_angle[6] = -90;
			$new_angle[8] = 90;
			if($original_extension == "jpg" or $original_extension == "jpeg"){
				$original_image = imagecreatefromjpeg($original_file);
				$rotated_image = imagerotate($original_image, $new_angle[$exif_orientation], 0);
				imagejpeg($rotated_image, $original_file,100);
            }
            if($original_extension == "gif"){
                $original_image = imagecreatefromgif($original_file);
				$rotated_image = imagerotate($original_image, $new_angle[$exif_orientation], 0);
				imagegif($rotated_image, $original_file);
           }
            if($original_extension == "png"){
                $original_image = imagecreatefrompng($original_file);
				$rotated_image = imagerotate($original_image, $new_angle[$exif_orientation], 0);
                imagepng($rotated_image, $original_file,9);
            }
            imagedestroy($original_image);
            imagedestroy($rotated_image);
        }
    }
}

Der Aufruf erfolgt dann beim Erstellen der Thumbnails. Daher dauert dies relativ lang (Laufzeiten und Speichergröße in PHP ggfs. anpassen):

[== PHP ==]

		//generate preview images
		echo '<!-- start preview images -->'."\n";
		echo '<div class="pictures">'."\n";
		for ($i = 0; $i < $num; $i++) {
		//for ($i = $offset; $i < $offset + $maxpics; $i++) {
		//	if ($i >= $num) {
		//		break;
		//	}
			$filename = $pics[$i];
			$file = $realdir . $delim . $filename;
			if (!is_readable($file)) {
				continue;
			}
			// Rotate image, if neccessary
			$exif = exif_read_data($file);
			if(!empty($exif['Orientation'])) {
				if ($exif['Orientation']>1) {
					gd_auto_rotate($file,$exif['Orientation']);
				}
			}

Habe die view.php einmal angefügt.

Hoffe es hilft auch anderen

Beitrag geändert von rolfp (20.06.2018 13:17:07)

Offline

Liked by:

florian

Fußzeile des Forums

up