Modul Imagesize

Diskussion zu nicht so umfangreichen Modulen und Start-Up für neue Module. Ansonsten bitte die speziellen Kategorien benutzen!

Das Bildgrößen-Modul würde ich...

... gerne kaufen!
8
40%
... nur geschenkt nehmen!
12
60%
... niemals brauchen...
0
Keine Stimmen
 
Insgesamt abgegebene Stimmen: 20

Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

hscha hat geschrieben:Deine Bemerkung mit der kompakteren Darstellung ist mir zu kompakt (unverständlich!). :)
Mir wird es (insbesondere wenn auf kleineren Monitoren die Zeilen umgebrochen werden) zu weitläufig und unübersichtlich. Das verwirrt den Anwender. Vielleicht sollte ich auf Icons umsteigen?
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

Das Modul liegt jetzt als 4.3 vor.

Der Kerncode wurde geändert, so daß keine Codeanpassungen mehr notwendig sind um unterschiedliche Attribut-Strukturen zu erfassen und Fremdprodukte wie Lightbox einzubinden.

Dafür gibt es jetzt eine frei definierbare Attributliste und frei definierbaren Ausgabecode.

Um z.B. Lightbox einzubinden reicht folgendes:

Nehmen wir mal an, Sie haben Lightbox in einem Unterverzeichnis "lightbox" im ConPresso-Verzeichnis installiert und die Pfade im CSS- und JS-File laut Lightbox-Anleitung angepasst.

Dann muß ins Seitentemplate bzw. global_header statt dem Modul-JS-Code der Lightbox-Code

Code: Alles auswählen

<head>
...
<script type="text/javascript" src="../lightbox/js/prototype.js"></script>
<script type="text/javascript" src="../lightbox/js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="../lightbox/js/lightbox.js"></script>
<link rel="stylesheet" href="../lightbox/css/lightbox.css" type="text/css" media="screen" />
</head>
Nun nur noch das Code-Template in den Moduleinstellungen ändern zu

Code: Alles auswählen

<a href="### ZOOM_FILE ###" rel="lightbox" title="### IMG_ALT ###">### IMG_TAG ###</a>
Die Voreinstellungen haben einen vierten Parameter bekommen, um das Erzeugen eines Zoombildes zu erlauben/verhindern. Außerdem wird das Bild beim Weglassen aller Parameter außer dem Namen nur hochgeladen, so daß dieser sinnigerweise "nur hochladen" oder "unverändert hochladen" lauten könnte...

Für ein Update von älteren Versionen bitte den Hinweis am Ende folgender Seite beachten
http://manual.conpresso4.de/imagesize/setup.htm
ist ganz einfach...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 573
Registriert: 22.02.2006 23:00
Wohnort: Berlin
Hat sich bedankt: 202 Mal
Danksagung erhalten: 19 Mal

Beitrag von hscha »

Hallo Markus,
wenn ich deine Modifikation "enhanced delete" benutze, muss ich dann den mod_imagesize-code in der i_manage_files.php hier einfügen:

Code: Alles auswählen

case 'reallydelete':
    $db = new DB;
   $idString=implode(',',$_POST['id']);
    $db->query("SELECT datei FROM ".CPO_DATA." "
              ."WHERE id IN (".$idString.")");
    while ($db->next_record()) {
        $datei[] = $db->v('datei');
    }
   $nameString= implode(', ',$datei);
   if (isset($_POST['no'])) {
      $message[] = __('Aborted by user. No file was deleted.');
      break;
   }

   $query_del = "DELETE FROM ".CPO_DATA." "
                ."WHERE id IN (".$idString.")";
    DEBUG(1, $query_del, __FILE__, __LINE__);
    $db->query($query_del);

    foreach ($datei AS $dateiName) @unlink (CPO_BASEDIR.'_data/'.$dateiName);
    // Imagetool-Mod ################################
        if (array_key_exists('Imagetool', $activeModules))
            {
              include(CPO_BASEDIR . $activeModules['Imagetool']['directory'] . '/includes/inc_del.php');
            }
    // Imagetool-Mod ################################ 
    switch ($show_only_images) {
    case true: ...
:?:
Irgendwie läuft das Modul hier noch nicht richtig...
Nach dem Upload eines Bildes werden die zoom- und Vorschauversion nicht erzeugt (System ist CPO 4.1.2)

Grüße von
Horst
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

zu 1) enhanced delete und mod_imagesize sind nicht kompatibel. Müsste man erst umprogrammieren.

zu 2) welche Chace habe ich das zu prüfen? Auf allen meinen Server geht's.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 573
Registriert: 22.02.2006 23:00
Wohnort: Berlin
Hat sich bedankt: 202 Mal
Danksagung erhalten: 19 Mal

Beitrag von hscha »

Hallo Markus,
ich werde enhanced delete erstmal auskommentieren und das Modul nochmal checken...
Melde mich nochmal.

Gruß von
Horst
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

Bitte immer bedenken, daß man möglicherweise ein 10-Megapixel-Jpeg auf den Server laden kann, zu dessen Verarbeitung / Skalierung aber schnell mal 100 bis 1000 MB Arbeitsspeicher erforderlich sind.
Daher niemals Bilder auf einen (Miet-) Server laden, die nicht 1:1 auf einen Computer-Bildschirm passen.
Klar ist der Sinn von mod_imagesize Bilder webgerecht umzurechen. Dies aber primär aus gestalterischen und Usabilty-Gründen und weniger um beratungsresitente Redakteure auf das System loslassen zu können :wink:
Oder man holt sich einen eigenen Server... dann geht auch sowas...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 573
Registriert: 22.02.2006 23:00
Wohnort: Berlin
Hat sich bedankt: 202 Mal
Danksagung erhalten: 19 Mal

Beitrag von hscha »

Hallo Markus,
ich habe enhanced_delete auskommentiert und mod_imagesize auf der CPO 4.1.2 installiert und die entsprechenden Dateien lt. Installationsanleitung modifiziert.
Das Modul tut aber leider nicht, was es soll. Beim Hochladen eines Bildes (jpg, 177kB, 1024 x 768px ;) werden wie oben erwähnt kein Vorschaubild oder das "zoom-"Bild angelegt. Ich sende dir einen Zugang per PM sowie die geänderten Dateien.

Grüße von
Horst
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

Erster Fehler:
Bei der Suche nach

Code: Alles auswählen

printf(__('The file is an image of type <em>%s</em> and is suitable for webpages.').'<br />',
und dem "darüber einfügen" hast Du dich um eine Zeile vertan.

Die schließende geschweifte Klammer } muß vor den Teil, der eingefügt wird, nicht dahinter. Diese gehört zur Püfung auf Dateigröße, d.h. es würde nur dann mod_imagesize ausgeführt, wenn die Datei zu groß ist und bereits zwei Zeilen vorher gelöscht wurde, also NIE... :wink:
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

Eine Quick&Dirty-Version für "enhanced delete":

Der Teil

Code: Alles auswählen

foreach ($datei AS $dateiName) @unlink (CPO_BASEDIR.'_data/'.$dateiName);
wird ersetzt durch

Code: Alles auswählen

foreach ($datei AS $dateiName) {
    @unlink (CPO_BASEDIR.'_data/'.$dateiName); 
    @unlink (CPO_BASEDIR.'_data/'.$activeModules['Imagetool']['prefix'].$dateiName); // Imagetool-Mod
    // @unlink (CPO_BASEDIR.'_data/original_'.$dateiName); // Imagetool-Mod
}
die dirtte Zeile kann aktiviert werden, wenn man die Originalbilder speichert und die nun auch gelöscht haben möchte.

Nicht getestet!!!
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 573
Registriert: 22.02.2006 23:00
Wohnort: Berlin
Hat sich bedankt: 202 Mal
Danksagung erhalten: 19 Mal

Beitrag von hscha »

Hallo Markus,
ad 1:
Erster Fehler:
shit happens! :oops:

ad 2:
Quick&Dirty-Version für "enhanced delete"
funktioniert! Habe nach einer Sicherung von _data/ alle Möglichkeiten durchprobiert: Sowohl einzelne oder mehrere Dateien sowie das jeweilige Bildset für mod_imagesize werden ordentlich gelöscht und aus der Datenbank ausgetragen.

Mindestens 1000 Dank von
Horst :D
dutch
ConPresso-Experte
Beiträge: 547
Registriert: 04.07.2007 17:12
Hat sich bedankt: 27 Mal
Danksagung erhalten: 7 Mal

Beitrag von dutch »

Hallo Markus,

wenn ich es richtig verstehe generiert mod_imagesize aus einem hochgeladenen Bild zwei neue, ein thumb und eine größere Version.
Und die größere Version kann dann wahlweise per Klick auf das thumb in einem pop-up angezeigt werden.

Ist es auch möglich die größere Bildversionen unabhängig von der kleinen in einem Artikel anzeigen zu lassen?
Ich möchte die thumbs auf der Rubrikseite einbinden und auf der Detailseite dann die größere Bildversion.
Geht das?

Gruß,
dutch
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Beitrag von MarkusR »

Im Bildwähler steht immer nur die Thumbnail-Version zur Verfügung, die dann eben eingesetzt wird.
Wird beim Generieren der Seite festgestellt, dann es eine dazu gehörige Datei mit dem Präfix "zoom_" (frei wählbar) gibt, dann ist das Thumbnail anklickbar.

Natürlich kann man jederzeit im Editor zoom_ vor den Dateinamen schreiben oder gleich im Template

Code: Alles auswählen

<img src="../_data/zoom_<!-- Image: Bild; file; -->" />
reinschreiben.

Die Thumbnails können von dem Vergrößerungseffekt befreit werden, wenn man den Code in den Einstellungen von

Code: Alles auswählen

<a href="### ZOOM_FILE ###" onclick="ZoomImageFenster(this.href,### ZOOM_WIDTH ###,### ZOOM_HEIGHT ###,'### CLOSE_TEXT ### ### IMG_ALT ###'); return false" title="### ENLARGE_TEXT ###
### IMG_ALT ###">### IMG_TAG ###</a>
z.B. auf

Code: Alles auswählen

### IMG_TAG ###
ändert oder die Änderungen in global_header und parser einfach weglässt.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
dutch
ConPresso-Experte
Beiträge: 547
Registriert: 04.07.2007 17:12
Hat sich bedankt: 27 Mal
Danksagung erhalten: 7 Mal

Beitrag von dutch »

Hallo Markus,

alles klar, danke!

Gruß,
dutch
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7164
Registriert: 01.01.1970 02:00
Hat sich bedankt: 104 Mal
Danksagung erhalten: 919 Mal

Achtung: Kompatibilität mit CPO 4.1.3

Beitrag von MarkusR »

Heute ist mir aufgefallen, daß das Modul mit ConPresso 4.1.3 nicht lauffähig ist.

Ursache ist erneut, daß eine Variable, die schon in CPO 3.4.x (und möglicherweise auch schon früher) $new_filename hieß nun plötzlich in $newFilename umbenannt wurde.
Da mod_imagesize genau diesen Dateinamen benutzt bricht jeder Umrechnungsversuch mit der Meldung ab, daß der angegebene Dateiname nicht leer sein darf.

Wer mod_imagesize mit CPO 4.1.3 einsetzen möchte muß derzeit bei den Anpassungen in i_file_upload.php vor die Zeile

Code: Alles auswählen

include(CPO_BASEDIR . $activeModules['Imagetool']['directory'] . '/includes/inc_resize.php');
noch ein einfaches

Code: Alles auswählen

$new_filename = $newFilename;
davorschreiben.

Alle Versionen davor sind NICHT davon betroffen und würden mit der Änderung NICHT funktionieren!
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
balu
ConPresso-Entwickler
Beiträge: 1748
Registriert: 01.01.1970 02:00
Hat sich bedankt: 81 Mal
Danksagung erhalten: 133 Mal

Beitrag von balu »

Hi Markus,

sorry für die Umbenennung. Ich versuche immer, wenn ich Codeteile bearbeiten muss, da auch die Variablen an den CamelCase anzupassen, um das zu vereinheitlichen.

Du könntest im include einfach beide Variablen berücksichtigen:

Code: Alles auswählen

<?php
if (empty($new_filename)) $new_filename = $newFilename;
Balu
Bartels.Schöne
ConPresso Support & Development