4images Forum & Community

4images Modifications / Modifikationen => Mods & Plugins (Requests & Discussions) => Topic started by: Sunny C. on October 07, 2008, 04:57:46 PM

Title: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
Post by: Sunny C. on October 07, 2008, 04:57:46 PM
CODE UPDATE: 2008.08.10 and New Package
CODE UPDATE: 08.10.2008 und neues Packet


==========================
 :flag-de: Deutsch
==========================


======[ In dieser Anleitung sind mehrere Modifikationen vereint, die aber einen Sinn Erfüllen.
======[ Diese Modifikationen sind nicht von mir selber erstellt, bis auf das Highlight in der Details Ansicht.


Folgende Features bringt diese Modifikation mitsich

==========================
 :flag-en: English - Translate by Google
==========================


======[ In this guide, several modifications united, but a sense Meet.
======[ These modifications are not of myself drawn to the highlight in the details view.


Following features this modification brings with it

Thanks SLL for: [MOD] Image Annotations (Watermark) : http://www.4homepages.de/forum/index.php?topic=13719.0
Thanks V@no for: [MOD] Auto image resize on upload : http://www.4homepages.de/forum/index.php?topic=7700.0
Thanks V@no for: [FIX] Max height has no affect when do image resize : http://www.4homepages.de/forum/index.php?topic=7058.msg30980#msg30980
Thanks V@no for: [MOD] Auto copy original file to /big/ folder : http://www.4homepages.de/forum/index.php?topic=7700.msg22313#msg22313
Thanks V@no for: [MOD] Show original image in new window by clicking on image : http://www.4homepages.de/forum/index.php?topic=3236.0
Thanks mawenzi for: [MOD] Histogram : http://www.4homepages.de/forum/index.php?topic=11844.msg62989#msg62989
Thanks rinaldos for: [Addon] Highslide from Thumbnail Image : http://www.4homepages.de/forum/index.php?topic=20461.0
Thanks Rembrandt for: [MOD] EXIF V.1.7.6 in DB : http://www.4homepages.de/forum/index.php?topic=21017.0
Thanks Rembrandt for: [MOD] EXIF V.1.7.6 Suchfelder Erweiterung : http://www.4homepages.de/forum/index.php?topic=21053.0
Thanks Rembrandt for: [MOD] IPTC V.1.7.6 Suchfelder Erweiterung : http://www.4homepages.de/forum/index.php?topic=21141.0


:flag-de: Ok, dann geht es los
:flag-en: Ok, then does it start


:flag-de: Dateien die Editiert werden
- member.php
- admin/index.php
- includes/upload.php
- admin/settings.php
- lang/<yourlanguage>/admin.php
- includes/image_utils.php
- admin/resizer.php
- includes/functions.php
- templates/YOURTEMPLATE/details.html
- templates/YOURTEMPLATE/header.html
- details.php
- templates/YOURTEMPLATE/thumbnail_bit.html
- templates/YOURTEMPLATE/style.css
- includes/db_field_definitions.php
- includes/constants.php
- includes/search_utils.php

 :flag-en: Files to edit
- member.php
- admin/index.php
- includes/upload.php
- admin/settings.php
- llang/<yourlanguage>/admin.php
- includes/image_utils.php
- admin/resizer.php
- includes/functions.php
- templates/YOURTEMPLATE/details.html
- templates/YOURTEMPLATE/header.html
- details.php
- templates/YOURTEMPLATE/thumbnail_bit.html
- templates/YOURTEMPLATE/style.css
- includes/db_field_definitions.php
- includes/constants.php
- includes/search_utils.php

Step 0
:flag-de:
Lade dir das Paket. Entpacke das Packet.
Gehe in dem Ordner templates/ und benenne den Ordner YOURTEMPLATES in dem Name deines Templates Ordner um.
Kopiere alle Dateien in die angegebene Ordnerstruktur auf deinen Webserver.
Starte: install_annotation.php, install_iptc.php, install_exif.php, install_Exif_Word_match.php, und danach: install_autoimage.php
Lösche die Dateien: install_annotation.phpinstall_iptc.php, install_Exif_Word_match.php, install_exif.php, install_autoimage.php und ia.sql

:flag-en:
Download the package. Unzip the package.
Go into the folder templates / and rename the folder YOURTEMPLATES in the name of your template folder.
Copy all the files in the folder structure on your Web server.
Start: install_annotation.php install_exif.php, install_iptc.phpinstall_Exif_Word_match.php, and beyond: install_autoimage.php
Delete the files: install_annotation.phpinstall_iptc.php, install_Exif_Word_match.php, install_exif.php, install_autoimage.php and ia.sql

Step 1
:flag-de: OPEN    member.php
 :flag-en: ÖFFNE   member.php

 :flag-en: FIND
 :flag-de: FINDE

[/list][/list]if (!$uploaderror) { 

:flag-en: DIRECT BEFORE, ADD
:flag-de: FÜGE DIREKT DARÜBER EIN

//-------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------

if ($config['annotation_use'] && strtolower(get_file_extension($new_name) == jpg)) {
require(ROOT_PATH.'includes/annotate.php');
$ann_user_name = ($user_info['user_name']);
  if ($direct_upload) { $ann_src = MEDIA_PATH."/".$cat_id."/".$new_name; }
  else { $ann_src = MEDIA_TEMP_PATH."/".$new_name; }
  annotate_image($ann_src);
}

//-------------------------------------------------------------------------------------------


 :flag-en: FIND
 :flag-de: FINDE

if (!$uploaderror) { 

:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN

//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
                  if ($config['auto_image'] && !$uploaderror) {
                     $src_copy = MEDIA_PATH."/".$cat_id."/big";
                     if ($direct_upload) {
                        $src = MEDIA_PATH."/".$cat_id."/".$new_name;
                        $src_copy = MEDIA_PATH."/".$cat_id."/big";
                    }
                    else {
                        $src = MEDIA_TEMP_PATH."/".$new_name;
                    }
                    $do_resize = 0;
                if ($image_info = @getimagesize($src)) {
                       if ($image_info[2] == 1 || $image_info[2] == 2 || $image_info[2] == 3) {
                          $do_resize = 1;
                    }
                  }
                  if ($do_resize) {
                     if (!function_exists(init_convert_options)) {
                           require(ROOT_PATH.'includes/image_utils.php');
                        }
                        $convert_options = init_convert_options();
        if (!$convert_options['convert_error']) {
if ($image_info[0] > $config['max_image_width'] || $image_info[1] > $config['max_image_height']) {
$result = true;
  if (!@is_dir($src_copy)) {
    $oldumask = umask(0);
    $result = mkdir($src_copy);
    umask($oldumask);
    if (!@is_dir($src_copy) || !$result) {
      $result = mkdir($src_copy, 0755);

    }
  }
if ($result == true){
copy($src, $src_copy."/".$new_name);
}
                      $convert_options = init_convert_options();
                      if (!$convert_options['convert_error']) {
                        $quality = (intval($config['auto_image_quality']) && intval($config['auto_image_quality']) <= 100) ? intval($config['auto_image_quality']) : 100;
                        if (!resize_image($src, $quality, $config['max_image_width'], 1)) {
                          $msg .= (($msg != "") ? "<br />" : "")."<b>".$lang['file_upload_error'].": ".$new_name;
                            $uploaderror = 1;
                         }
                     }
                   }else{
                    $do_resize = 0;
                   }
                      }
                     }
                  }
//-------------------------------------------------------------------------------------------

Step 2
:flag-de: OPEN    admin/index.php
 :flag-en: ÖFFNE   admin/index.php

 :flag-en: FIND
 :flag-de: FINDE

show_nav_option($lang['nav_general_settings'], "settings.php?action=modifysettings");

 :flag-en: ADD AFTER
 :flag-de: FÜGE DANACH EIN

//-------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
show_nav_option($lang['nav_ann_settings'], "ann_settings.php?action=modifysettings");
//-------------------------------------------------------------------------------------------

Step 3
:flag-en: OPEN    lang/english/admin.php
:flag-de: ÖFFNE   lang/deutsch/admin.php

:flag-de:
//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
$lang['nav_ann_settings'] = "Annotation Einstellungen";
$lang['nav_ann_current_conv_tool'] = "gewaehlt als Modul zum Erstellen der Bilder";
$setting['annotation_use'] = "Automatische Annotation-Funktion beim Upload";
$setting['annotation_mode'] = "Anmerkung Modus<br /><span class=\"smalltext\">Wahlen Sie wenn Sie Text fur Anmerkung verwendend oder Bild einbettend vor</span>";
$annotation_mode_optionlist = array(
  "text"  => "Text",
  "image" => "Bild"
);
$setting['annotation_embed_image'] = "Einzubetten Bild<br /><span class=\"smalltext\">Spezifizieren Sie PNG voller Path und Dateiname</span>";
$setting['annotation_embed_image_opacity'] = "Eingebettete Bildnis Undurchsichtigkeit<br /><span class=\"smalltext\">Spezifizieren Sie Wert von 0 bis 100.</span>";
$setting['annotation_embed_image_bg'] = "Eingebettete Bildhintergrundfarbe, zum als transparentes einzustellen<br /><span class=\"smalltext\">Definieren Sie  einen HEX Wert, Z.B. #000000. Beispiele sehen Sie hier <a target=\"_blank\" href=\"color.html\">Farbbeispiele</a></span>";
$setting['annotation_font'] = "Annotation Schriftart&nbsp;&nbsp;<br><span class=\"smalltext\">Definieren Sie die volle Pfadangabe und den Dateinamen der Schrift<br>Für ImageMagick & GD Lib: nur <b>Windows TTF</b> fonts, für NetPBM: nur <b>X-Windows BDF</b> Fonts!</span>";
$setting['annotation_font_size'] = "Annotation Schriftgrosse";
$setting['annotation_use_shadow'] = "Schatten Buchstaben verwenden";
$setting['annotation_shadow_offset'] = "Schattenversatz (gleichfalls rechts und unten)";
$setting['annotation_image_quality'] = "Auszugebende Bildqualitat (in Prozent)";
$setting['annotation_text'] = "Annotation Text<br /><span class=\"smalltext\">Sie konnen Variablen hier benutzen: <b>%N</b> fur Name der Galerie, <b>%H</b> fur Site URL, <b>%U</b> - Kurze Site URL, <b>%S</b> - Username, <b>%D</b> fur jetziges Datum, <b>%T</b> fur jetzige Zeit, <b>%B</b> - line break</span>";
$setting['annotation_fill_color'] = "Annotation Text Fullfarbe<br /><span class=\"smalltext\">Definieren Sie  einen HEX Wert, Z.B. #000000. Beispiele sehen Sie hier <a target=\"_blank\" href=\"color.html\">Farbbeispiele</a></span>";
$setting['annotation_shadow_color'] = "Annotation Text Schattenfarbe<br /><span class=\"smalltext\">Definieren Sie  einen HEX Wert, Z.B. #000000. Beispiele sehen Sie hier <a target=\"_blank\" href=\"color.html\">Farbbeispiele</a></span>";
$setting['annotation_fill_alpha'] = "Fullfarbe des Alpha Blending (Transparenz)<br /><span class=\"smalltext\">Der Alpha Blending Wert muss zwischen 0.0 and 1.0&nbsp;&nbsp;&nbsp;&nbsp;(0.0 = Keine Transparenz) liegen</span>";
$annotation_fill_alpha_optionlist = array(
  "0.0"  => "0.0",
  "0.1"  => "0.1",
  "0.2"  => "0.2",
  "0.3"  => "0.3",
  "0.4"  => "0.4",
  "0.5"  => "0.5",
  "0.6"  => "0.6",
  "0.7"  => "0.7",
  "0.8"  => "0.8",
  "0.9"  => "0.9",
);
$setting['annotation_shadow_alpha'] = "Schattenfarbe des Alpha Blending (Transparenz)<br /><span class=\"smalltext\">Der Alpha Blending Wert muss zwischen 0.0 and 1.0&nbsp;&nbsp;&nbsp;&nbsp;(0.0 = Keine Transparenz) liegen</span>";
$annotation_shadow_alpha_optionlist = array(
  "0.0"  => "0.0",
  "0.1"  => "0.1",
  "0.2"  => "0.2",
  "0.3"  => "0.3",
  "0.4"  => "0.4",
  "0.5"  => "0.5",
  "0.6"  => "0.6",
  "0.7"  => "0.7",
  "0.8"  => "0.8",
  "0.9"  => "0.9",
);
$setting['annotation_v_alignment'] = "Vertikale Ausrichtung des Annotation Textes oder Bild";
$setting['annotation_h_alignment'] = "Horizontale Ausrichtung des Annotation Textes oder Bild";
$annotation_v_positioning_optionlist = array(
  "top"  => "Oberer Rand des Bildes",
  "middle"  => "Bildmitte",
  "bottom" => "Unterer Rand des Bildes"
);
$annotation_h_positioning_optionlist = array(
  "left"  => "Linke Bildecke",
  "center"  => "Bildcenter",
  "right" => "Rechte Bildecke"
);
$setting['annotation_top_offset'] = "Versatz des oberen Textes oder Bild";
$setting['annotation_bottom_offset'] = "Versatz des unteren Textes oder Bild";
$setting['annotation_left_offset'] = "Versatz des linken Textes oder Bild";
$setting['annotation_right_offset'] = "Versatz des rechten Textes oder Bild";

//-------------------------------------------------------------------------------------------

:flag-en:
//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
$lang['nav_ann_settings'] = "Annotation Settings";
$lang['nav_ann_current_conv_tool'] = "is set as an image conversion tool";
$setting['annotation_use'] = "Use auto images annotation on image upload";
$setting['annotation_mode'] = "Annotation mode<br /><span class=\"smalltext\">Select if you using text for annotation or embedding image</span>";
$annotation_mode_optionlist = array(
  "text"  => "text",
  "image" => "image"
);
$setting['annotation_embed_image'] = "Image to embed<br /><span class=\"smalltext\">Specify full path and filename of PNG image</span>";
$setting['annotation_embed_image_opacity'] = "Embedded image opacity<br /><span class=\"smalltext\">Specify value from 0 to 100.</span>";
$setting['annotation_embed_image_bg'] = "Embedded image background color to set as a transparent<br /><span class=\"smalltext\">Define HEX value, for example #000000. Have a look at <a target=\"_blank\" href=\"color.html\">color samples</a></span>";
$setting['annotation_font'] = "Annotation font&nbsp;&nbsp;<span class=\"smalltext\"><br>Specify full path and font filename.<br>For ImageMagick & GD Lib: <b>Windows TTF</b> fonts only, for NetPBM: <b>X-Windows BDF</b> fonts only!</span>";
$setting['annotation_font_size'] = "Annotation font size";
$setting['annotation_use_shadow'] = "Use letter shadows";
$setting['annotation_shadow_offset'] = "Shadow offset (same right and down)";
$setting['annotation_image_quality'] = "Resulting image quality (in per cent)";
$setting['annotation_text'] = "Annotation text<br /><span class=\"smalltext\">You can use the following variables: <b>%N</b> - Site Name, <b>%H</b> - full Site URL, <b>%U</b> - short Site URL, <b>%S</b> - User Name, <b>%D</b> - date, <b>%T</b> - time, <b>%B</b> - line break</span>";
$setting['annotation_fill_color'] = "Annotation text fill color<br /><span class=\"smalltext\">Define HEX value, for example #FFFFFF. Have a look at <a target=\"_blank\" href=\"color.html\">color samples</a></span>";
$setting['annotation_shadow_color'] = "Annotation text shadow color<br /><span class=\"smalltext\">Define HEX value, for example #000000. Have a look at <a target=\"_blank\" href=\"color.html\">color samples</a></span>";
$setting['annotation_fill_alpha'] = "Fill color alpha blending (transparency)<br /><span class=\"smalltext\">Alpha blending value must be between 0.0 and 0.9&nbsp;&nbsp;&nbsp;&nbsp;0.0 = no transparency</span>";
$annotation_fill_alpha_optionlist = array(
  "0.0"  => "0.0",
  "0.1"  => "0.1",
  "0.2"  => "0.2",
  "0.3"  => "0.3",
  "0.4"  => "0.4",
  "0.5"  => "0.5",
  "0.6"  => "0.6",
  "0.7"  => "0.7",
  "0.8"  => "0.8",
  "0.9"  => "0.9",
);
$setting['annotation_shadow_alpha'] = "Shadow color alpha blending (transparency)<br /><span class=\"smalltext\">Alpha blending value must be between 0.0 and 0.9&nbsp;&nbsp;&nbsp;&nbsp;0.0 = no transparency</span>";
$annotation_shadow_alpha_optionlist = array(
  "0.0"  => "0.0",
  "0.1"  => "0.1",
  "0.2"  => "0.2",
  "0.3"  => "0.3",
  "0.4"  => "0.4",
  "0.5"  => "0.5",
  "0.6"  => "0.6",
  "0.7"  => "0.7",
  "0.8"  => "0.8",
  "0.9"  => "0.9",
);
$setting['annotation_v_alignment'] = "Vertical annotation alignment";
$setting['annotation_h_alignment'] = "Horizontal annotation alignment";
$annotation_v_positioning_optionlist = array(
  "top"  => "image top",
  "middle" => "image middle",
  "bottom" => "image bottom"
);
$annotation_h_positioning_optionlist = array(
  "left"  => "left image edge",
  "center"  => "image center",
  "right" => "right image edge"
);
$setting['annotation_top_offset'] = "Top annotation margin";
$setting['annotation_bottom_offset'] = "Bottom annotation margin";
$setting['annotation_left_offset'] = "Left annotation margin";
$setting['annotation_right_offset'] = "Right annotation margin";
//-------------------------------------------------------------------------------------------

Step 4
:flag-en: OPEN    includes/upload.php
:flag-de: ÖFFNE   includes/upload.php

:flag-en: FIND
:flag-de: FINDE

$this->max_height['media'] = $config['max_image_height'];

:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN

//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
      $this->auto_image['media'] = $config['auto_image'];
//-------------------------------------------------------------------------------------------

:flag-en: FIND
:flag-de: FINDE
    if ($this->image_size[1] > $this->max_height[$this->image_type]) {
      $ok = 0;
      $this->set_error($this->lang['invalid_image_height']);
    }

:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN

//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
      if ($this->auto_image[$this->image_type]) {
         $ok = 1;
      }
//-------------------------------------------------------------------------------------------

Step 5

:flag-en: OPEN    admin/settings.php
:flag-de: ÖFFNE   admin/settings.php

:flag-en: FIND
:flag-de: FINDE

 show_setting_row("upload_emails");

:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN

//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
  show_setting_row("auto_image", "radio");
  show_setting_row("auto_image_quality");
//-------------------------------------------------------------------------------------------

Step 6
:flag-en: OPEN    lang/<yourlanguage>/admin.php
:flag-de: ÖFFNE   lang/<yourlanguage>/admin.php

:flag-en: FIND
:flag-de: FINDE

$setting['auto_thumbnail_quality']


:flag-en: DIRECT AFTER, ADD
$setting['auto_image'] = "Auto-resize image";
$setting['auto_image_quality'] = "Auto-resize image quality";
:flag-de: FÜGE DIREKT DARUNTER EIN
$setting['auto_image'] = "Automatische Bildverkleinerung";
$setting['auto_image_quality'] = "Bildqualität des Bildes";

Step 7
:flag-en: OPEN    includes/image_utils.php
:flag-de: ÖFFNE   includes/image_utils.php

:flag-en: FIND
:flag-de: FINDE

function get_width_height($dimension, $width, $height, $resize_type = 1) {
  if ($resize_type == 2) {
    $new_width = $dimension;
    $new_height = floor(($dimension/$width) * $height);
  }
  elseif ($resize_type == 3) {
    $new_width = floor(($dimension/$height) * $width);
    $new_height = $dimension;
  }
  else {
    $ratio = $width / $height;
    if ($ratio > 1) {
      $new_width = $dimension;
      $new_height = floor(($dimension/$width) * $height);
    }
    else {
      $new_width = floor(($dimension/$height) * $width);
      $new_height = $dimension;
    }
  }
  return array("width" => $new_width, "height" => $new_height);
}

:flag-en: Replace with
:flag-de: Ersetze mit

function get_width_height($w, $width, $height, $resize_type = 1, $h = 0) {
  $h = ($h) ? $h : $w;
  if ($resize_type == 2) {
    $new_width = $w;
    $new_height = round(($w/$width) * $height);
  }
  elseif ($resize_type == 3) {
    $new_width = round(($h/$height) * $width);
    $new_height = $h;
  }
  else {
    $new_width = min ($w, $width);
    $new_height = min ($h, $height);
    $p = ($w > $h) ? $width / $height : $height / $width;
    if ($p > 1)
      $new_height = round($height * $new_width / $width);
    elseif ($p < 1)
      $new_width = round($width * $new_height / $height);
    if ($new_width > $w || $new_height > $h)
    {
      $new_width = min ($w, $new_width);
      $new_height = min ($h, $new_height);
      $p = ($w > $h) ? $height / $width : $width / $height;
      if ($p > 1)
        $new_height = round($height * $new_width / $width);
      elseif ($p < 1)
        $new_width = round($width * $new_height / $height);
    }
  }
  return array("width" => $new_width, "height" => $new_height);
}

:flag-en: FIND
:flag-de: FINDE

function resize_image($file, $quality, $dimension, $resize_type = 1) {

:flag-en: Replace with
:flag-de: Ersetze mit

function resize_image($file, $quality, $dimension, $resize_type = 1, $height = 0) {

:flag-en: FIND
:flag-de: FINDE
$width_height = get_width_height($dimension, $image_info[0], $image_info[1], $resize_type);
:flag-en: Replace with
:flag-de: Ersetze mit
  $width_height = get_width_height($dimension, $image_info[0], $image_info[1], $resize_type, $height);

Step 8
:flag-en: OPEN    admin/resizer.php
:flag-de: ÖFFNE   admin/resizer.php

:flag-en: FIND
:flag-de: FINDE
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : 200;
  $resize_type = (isset($HTTP_POST_VARS['resize_type'])) ? intval($HTTP_POST_VARS['resize_type']) : 1;
:flag-en: Replace with
:flag-de: Ersetze mit
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : $config['max_image_width'];
  $height = (isset($HTTP_POST_VARS['height'])) ? intval($HTTP_POST_VARS['height']) : $config['max_image_height'];
  $resize_type = (isset($HTTP_POST_VARS['resize_type'])) ? intval($HTTP_POST_VARS['resize_type']) : $config['auto_thumbnail_resize_type'];

:flag-en: FIND
:flag-de: FINDE
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : 200;
  $resize_type = (isset($HTTP_POST_VARS['resize_type'])) ? intval($HTTP_POST_VARS['resize_type']) : 1;
:flag-en: Replace with
:flag-de: Ersetze mit
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : $config['max_image_width'];
  $height = (isset($HTTP_POST_VARS['height'])) ? intval($HTTP_POST_VARS['height']) : $config['max_image_height'];
  $resize_type = (isset($HTTP_POST_VARS['resize_type'])) ? intval($HTTP_POST_VARS['resize_type']) : $config['auto_thumbnail_resize_type'];

:flag-en: FIND
:flag-de: FINDE
 show_input_row($lang['resize_dimension_desc'], "dimension", $dimension);
:flag-en: Replace with
:flag-de: Ersetze mit
  show_input_row($lang['max_imagewidth'], "dimension", $dimension);
  show_input_row($lang['max_imageheight'], "height", $height);

:flag-en: FIND
:flag-de: FINDE
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : 200;
:flag-en: Replace with
:flag-de: Ersetze mit
  $dimension = (isset($HTTP_POST_VARS['dimension'])) ? intval($HTTP_POST_VARS['dimension']) : $config['max_image_height'];
  $height = (isset($HTTP_POST_VARS['height'])) ? intval($HTTP_POST_VARS['height']) : $config['max_image_height'];

:flag-en: FIND
:flag-de: FINDE
         if ($resize_type == 1 && ($image_info[0] > $dimension || $image_info[1] > $dimension)) {
:flag-en: Replace with
:flag-de: Ersetze mit
         if ($resize_type == 1 && ($image_info[0] > $dimension || $image_info[1] > $height)) {

:flag-en: FIND
:flag-de: FINDE
          elseif ($resize_type == 3 && $image_info[1] > $dimension) {
:flag-en: Replace with
:flag-de: Ersetze mit
       elseif ($resize_type == 3 && $image_info[1] > $height) {

:flag-en: FIND
:flag-de: FINDE
           $width_height = get_width_height($dimension, $image_info[0], $image_info[1], $resize_type);
:flag-en: Replace with
:flag-de: Ersetze mit
           $width_height = get_width_height($dimension, $image_info[0], $image_info[1], $resize_type, $height);

:flag-en: FIND
:flag-de: FINDE
    show_hidden_input("dimension", $dimension);
:flag-en: DIRECT BEFORE, ADD
:flag-de: FÜGE DIREKT DARÜBER EIN
    show_hidden_input("height", $height);

Step 9
:flag-en: OPEN    includes/functions.php
:flag-de: ÖFFNE   includes/functions.php

:flag-en: FIND
:flag-de: FINDE
   $path = (($image_type == "media") ? (($cat_id) ? MEDIA_PATH."/".$cat_id : MEDIA_TEMP_PATH) : (($cat_id) ? THUMB_PATH."/".$cat_id : THUMB_TEMP_PATH))."/".$file_name;
    return ($check_handle($file_name) && file_exists($path)) ? (($in_admin && !preg_match("#(gif|jpg|jpeg|png)$#is", $file_name)) ? ICON_PATH."/".get_file_extension($file_name).".gif" : $path) : $return_code;
:flag-en: Replace with
:flag-de: Ersetze mit
   $path = (($image_type == "media") ? (($cat_id) ? MEDIA_PATH."/".$cat_id : MEDIA_TEMP_PATH) : (($image_type == "big") ? MEDIA_PATH."/".$cat_id."/big" : (($cat_id) ? THUMB_PATH."/".$cat_id : THUMB_TEMP_PATH)))."/".$file_name;
    return ($check_handle($file_name) && file_exists($path)) ? (($in_admin && !preg_match("#(gif|jpg|jpeg|png)$#is", $file_name)) ? ICON_PATH."/".get_file_extension($file_name).".gif" : $path) : (($image_type != "big") ? $return_code : "");

:flag-en: FIND
:flag-de: FINDE
   "image_file_name" => $image_row['image_media_file'],
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
   "media_src_big" => get_media_code($image_row['image_media_file'], $image_row['image_id'], $image_row['cat_id'], $image_row['image_name'], $mode, $show_link, $detailed_view, 1),

:flag-en: FIND
:flag-de: FINDE
function get_media_code($media_file_name, $image_id = 0, $cat_id = 0, $image_name = "", $mode = "", $show_link = 0, $detailed_view = 0) {
:flag-en: Replace with
:flag-de: Ersetze mit
function get_media_code($media_file_name, $image_id = 0, $cat_id = 0, $image_name = "", $mode = "", $show_link = 0, $detailed_view = 0, $big = 0) {

:flag-en: FIND
:flag-de: FINDE
   $media_src = get_file_path($media_file_name, "media", $cat_id, 0, 1);
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
   $media_src_big = get_file_path($media_file_name, "big", $cat_id, 0, 1);

:flag-en: FIND
:flag-de: FINDE
  $media = $site_template->parse_template("media/".$file_extension);
:flag-en: Replace with
:flag-de: Ersetze mit
   $media = ((!$big) ? ($site_template->parse_template("media/".$file_extension)) : $media_src_big);

:flag-en: FIND
:flag-de: FINDE
?>
:flag-en: DIRECT BEFORE, ADD
:flag-de: FÜGE DIREKT DARÜBER EIN
function check_remote_big($remote_media_file) {
  global $config;
  return (preg_match("#^(https?:\/\/[a-z0-9\-]+?\.([a-z0-9\-]+\.)*[a-z]+(:[0-9]+)*\/.*?\.(".$config['allowed_mediatypes_match'].")$)#is", $remote_media_file)) ? 1 : 0;
}
function check_local_big($local_media_file) {
  global $config;
  return (preg_match("#^((\.)*\/.*?\.(".$config['allowed_mediatypes_match'].")$)#is", $local_media_file)) ? 1 : 0;
}
function check_big_type($file_name) {
  global $config;
  return (in_array(get_file_extension($file_name), $config['allowed_mediatypes_array'])) ? 1 : 0;
}

:flag-en: FIND
:flag-de: FINDE
function get_exif_info($exif) {
  $exif_match = array();
  $exif_match['Make'] = "make";
  $exif_match['Model'] = "model";
  $exif_match['DateTimeOriginal'] = "datetime";
  $exif_match['ISOSpeedRatings'] = "isospeed";
  $exif_match['ExposureTime'] = "exposure";
  $exif_match['FNumber'] = "aperture";
  $exif_match['FocalLength'] = "focallen";

  $exif_array = array();
  if (is_array($exif)) {
    foreach ($exif as $key => $val) {
      if (isset($exif_match[$key])) {
        $exif_info = $val;
        if ($key == "DateTimeOriginal") {
          $exif_array[$exif_match[$key]] = preg_replace("/([0-9]{4}):([0-9]{2}):([0-9]{2})/", "\\3.\\2.\\1", $exif_info);
        }
        elseif ($key == "ExposureTime") {
  $exposure = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "1/" . ($exposure[1] / $exposure[0]);
        }
        elseif ($key == "FNumber") {
  $aperture = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "F/" . ($aperture[0] / $aperture[1]);
        }
        elseif ($key == "FocalLength") {
  $focalLen = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = ($focalLen[0] / $focalLen[1]) . "mm";
        }
        else {
          $exif_array[$exif_match[$key]] = $exif_info;
        }
      }
    }
  }
  return $exif_array;
}
:flag-en: Replace with

function get_exif_info($exif) {
  $exif_match = array();
  $exif_match['Make'] = "Make";
  $exif_match['Model'] = "Model";
  $exif_match['DateTimeOriginal'] = "DateTimeOriginal";
  $exif_match['ISOSpeedRatings'] = "ISOSpeedRatings";
  $exif_match['ExposureTime'] = "ExposureTime";
  $exif_match['FNumber'] = "FNumber";
  $exif_match['FocalLength'] = "FocalLength";
  $exif_match['ExposureBiasValue'] = "ExposureBiasValue";
  $exif_match['ApertureValue'] = "ApertureValue";
  $exif_match['MaxApertureValue'] = "MaxApertureValue";
  $exif_match['MeteringMode'] = "MeteringMode";
  $exif_match['Flash'] = "Flash";
  $exif_match['ExposureProgram'] = "ExposureProgram";
  $exif_match['ExposureMode'] = "ExposureMode";
  $exif_match['WhiteBalance'] = "WhiteBalance";
  $exif_match['GPSLatitude'] = "GPSLatitude";
  $exif_match['GPSLatitudeRef'] = "GPSLatitudeRef";
  $exif_match['GPSLongitude'] = "GPSLongitude";
  $exif_match['GPSLongitudeRef'] = "GPSLongitudeRef";
  $exif_match['GPSAltitude'] = "GPSAltitude";

$exif_array = array();
  if (is_array($exif)) {
    foreach ($exif as $key => $val) {
      if (isset($exif_match[$key])) {
        $exif_info = $val;
        if ($key == "DateTimeOriginal") {
          $exif_array[$exif_match[$key]] = preg_replace("/([0-9]{4}):([0-9]{2}):([0-9]{2})/", "\\3.\\2.\\1", $exif_info);
        }
        elseif ($key == "ExposureTime") {
  $ExposureTime = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "1/" . ($ExposureTime[1] / $ExposureTime[0]) . " Second";
        }
        elseif ($key == "FNumber") {
  $FNumber = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "F/" . ($FNumber[0] / $FNumber[1]);
        }
        elseif ($key == "FocalLength") {
  $FocalLength = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = round(($FocalLength[0] / $FocalLength[1])) . " mm";
        }
        elseif ($key == "ExposureBiasValue") {
  $ExposureBiasValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = round(($ExposureBiasValue[0] / $ExposureBiasValue[1]), 1) . " EV";
        }
elseif ($key == "ApertureValue") {
  $ApertureValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] ="F/" . round(($ApertureValue[0] / $ApertureValue[1]), 1);
        }
elseif ($key == "MaxApertureValue") {
  $MaxApertureValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] ="F/" . round((pow(sqrt(2),$MaxApertureValue[0] / $MaxApertureValue[1])), 1);   
}
elseif ($key == "MeteringMode") {
if($exif_info == 0) {$MeteringMode = "Unknown";}
if($exif_info == 1) {$MeteringMode = "Average";}
  if($exif_info == 2) {$MeteringMode = "Center-weighted average";} 
if($exif_info == 3) {$MeteringMode = "Spot";}
if($exif_info == 4) {$MeteringMode = "Multi-Spot";}
if($exif_info == 5) {$MeteringMode = "Multi-Segment";}
if($exif_info == 6) {$MeteringMode = "Partial ";}
if($exif_info == 255) {$MeteringMode = "Other";}
  $exif_array[$exif_match[$key]] = ($MeteringMode);
}
        elseif ($key == "Flash") {
if($exif_info == 0) {$Flash = "No Flash";}                                             
if($exif_info == 1) {$Flash = "Fired";}                                               
if($exif_info == 5) {$Flash = "Fired, Return not detected";}                         
if($exif_info == 7) {$Flash = "Fired, Return detected";}                               
if($exif_info == 8) {$Flash = "On, Did not fire";}                                     
if($exif_info == 9) {$Flash = "On";}                                                   
if($exif_info == 13) {$Flash = "On, Return not detected";}                             
if($exif_info == 15) {$Flash = "On, Return detected";}                                 
if($exif_info == 16) {$Flash = "Off";}                                                 
if($exif_info == 20) {$Flash = "Off, Did not fire, Return not detected";}             
if($exif_info == 24) {$Flash = "Auto, Did not fire";}                                 
if($exif_info == 25) {$Flash = "Auto, Fired";}                                         
if($exif_info == 29) {$Flash = "Auto, Fired, Return not detected";}                   
if($exif_info == 31) {$Flash = "Auto, Fired, Return detected";}                       
if($exif_info == 32) {$Flash = "No flash function";}                                   
if($exif_info == 48) {$Flash = "Off, No flash function";}                             
if($exif_info == 65) {$Flash = "Fired, Red-eye reduction";}                           
if($exif_info == 69) {$Flash = "Fired, Red-eye reduction, Return not detected";}       
if($exif_info == 71) {$Flash = "Fired, Red-eye reduction, Return detected";}           
if($exif_info == 73) {$Flash = "On, Red-eye reduction";}                               
if($exif_info == 77) {$Flash = "On, Red-eye reduction, Return not detected";}         
if($exif_info == 79) {$Flash = "On, Red-eye reduction, Return detected";}             
          if($exif_info == 80) {$Flash = "Off, Red-eye reduction";}                             
          if($exif_info == 88) {$Flash = "Auto, Did not fire, Red-eye reduction";}               
          if($exif_info == 89) {$Flash = "Auto, Fired, Red-eye reduction";}                     
          if($exif_info == 93) {$Flash = "Auto, Fired, Red-eye reduction, Return not detected";}
          if($exif_info == 95) {$Flash = "Auto, Fired, Red-eye reduction, Return detected";}     
   
 $exif_array[$exif_match[$key]] = ($Flash);                                                                               
        }                                                                                                                           
elseif ($key == "ExposureProgram") {                                                                                       
if($exif_info == 1) {$ExposureProgram = "Manual";}                                                                 
if($exif_info == 2) {$ExposureProgram = "Program AE";}                                                             
if($exif_info == 3) {$ExposureProgram = "Aperture-priority AE";}
if($exif_info == 4) {$ExposureProgram = "Shutter speed priority AE";}
if($exif_info == 5) {$ExposureProgram = "Creative (Slow speed)";}
if($exif_info == 6) {$ExposureProgram = "Action (High speed)";}
  if($exif_info == 7) {$ExposureProgram = "Portrait";}
if($exif_info == 8) {$ExposureProgram = "Landscape";}
  $exif_array[$exif_match[$key]] = ($ExposureProgram);
        }
elseif ($key == "ExposureMode") {
if($exif_info == 0) {$ExposureMode = "Automatic";}
if($exif_info == 1) {$ExposureMode = "Manuell";}
  if($exif_info == 2) {$ExposureMode = "Auto Bracket";} 
if($exif_info == 255) {$ExposureMode = "Unknow";}
  $exif_array[$exif_match[$key]] = ($ExposureMode);
        }
elseif ($key == "WhiteBalance") {
if($exif_info == 0) {$WhiteBalance = "Automatic";}
if($exif_info == 1) {$WhiteBalance = "Manual";}
  $exif_array[$exif_match[$key]] = ($WhiteBalance);
}

// GPS EXIF START - Changes by Erik Groennerud - www.koelschwasser.de 8.2007

elseif ($key == "GPSLatitudeRef") {
  if ($exif_info == "N") {
  $GPSLatitudeRef = "Nord";
  $GPSLatfaktor = 1;
  } else {
  $GPSLatitudeRef = "Süd";
  $GPSLatfaktor = -1;
  }
 
        }
        elseif ($key == "GPSLongitudeRef") {
  if ($exif_info == "E") {
  $GPSLongitudeRef = "Ost";
  $GPSLongfaktor = 1;
  } else {
  $GPSLongitudeRef = "West";
  $GPSLongfaktor = -1;
  }
}
        elseif ($key == "GPSLatitude") {
        $GPSLatitude_h = explode("/", $exif_info[0]);
        $GPSLatitude_m = explode("/", $exif_info[1]);
        $GPSLatitude_s = explode("/", $exif_info[2]);
       
        $GPSLat_h = $GPSLatitude_h[0] / $GPSLatitude_h[1];
        $GPSLat_m = $GPSLatitude_m[0] / $GPSLatitude_m[1];
        $GPSLat_s = $GPSLatitude_s[0] / $GPSLatitude_s[1];
       
        $GPSLatGrad = $GPSLatfaktor * ($GPSLat_h + ($GPSLat_m + ($GPSLat_s / 60))/60);
       
        $exif_array[$exif_match[$key]] =  $GPSLatitudeRef . " " .$GPSLat_h . "° ". $GPSLat_m . "' " . $GPSLat_s . "'' ($GPSLatGrad)";
        }
        elseif ($key == "GPSLongitude") {
        $GPSLongitude_h = explode("/", $exif_info[0]);
        $GPSLongitude_m = explode("/", $exif_info[1]);
        $GPSLongitude_s = explode("/", $exif_info[2]);
       
        $GPSLong_h = $GPSLongitude_h[0] / $GPSLongitude_h[1];
        $GPSLong_m = $GPSLongitude_m[0] / $GPSLongitude_m[1];
        $GPSLong_s = $GPSLongitude_s[0] / $GPSLongitude_s[1];
       
        $GPSLongGrad = $GPSLatfaktor * ($GPSLong_h + ($GPSLong_m + ($GPSLong_s / 60))/60);
       
        $exif_array[$exif_match[$key]] =  $GPSLongitudeRef . " " . $GPSLong_h . "° ". $GPSLong_m . "' " . $GPSLong_s . "'' ($GPSLongGrad)";
        }
        elseif ($key == "GPSAltitude") {
      $GPSAltitude = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = ($GPSAltitude[0] / $GPSAltitude[1]) . " Meter über NN";
        }
// GPS EXIF ENDE
       

else {
          $exif_array[$exif_match[$key]] = $exif_info;
        }
      }
    }
  }
  return $exif_array;
}


:flag-de: Ersetze mit
function get_exif_info($exif) {
  $exif_match = array();
  $exif_match['Make'] = "Make";
  $exif_match['Model'] = "Model";
  $exif_match['DateTimeOriginal'] = "DateTimeOriginal";
  $exif_match['ISOSpeedRatings'] = "ISOSpeedRatings";
  $exif_match['ExposureTime'] = "ExposureTime";
  $exif_match['FNumber'] = "FNumber";
  $exif_match['FocalLength'] = "FocalLength";
  $exif_match['ExposureBiasValue'] = "ExposureBiasValue";
  $exif_match['ApertureValue'] = "ApertureValue";
  $exif_match['MaxApertureValue'] = "MaxApertureValue";
  $exif_match['MeteringMode'] = "MeteringMode";
  $exif_match['Flash'] = "Flash";
  $exif_match['ExposureProgram'] = "ExposureProgram";
  $exif_match['ExposureMode'] = "ExposureMode";
  $exif_match['WhiteBalance'] = "WhiteBalance";
  $exif_match['GPSLatitude'] = "GPSLatitude";
  $exif_match['GPSLatitudeRef'] = "GPSLatitudeRef";
  $exif_match['GPSLongitude'] = "GPSLongitude";
  $exif_match['GPSLongitudeRef'] = "GPSLongitudeRef";
  $exif_match['GPSAltitude'] = "GPSAltitude";
  $exif_match['GPSTrack'] = "GPSTrack";

$exif_array = array();
  if (is_array($exif)) {
    foreach ($exif as $key => $val) {
      if (isset($exif_match[$key])) {
        $exif_info = $val;
        if ($key == "DateTimeOriginal") {
          $exif_array[$exif_match[$key]] = preg_replace("/([0-9]{4}):([0-9]{2}):([0-9]{2})/", "\\3.\\2.\\1", $exif_info);
        }
        elseif ($key == "ExposureTime") {
  $ExposureTime = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "1/" . ($ExposureTime[1] / $ExposureTime[0]) . " Sekunde";
        }
        elseif ($key == "FNumber") {
  $FNumber = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = "F/" . ($FNumber[0] / $FNumber[1]);
        }
        elseif ($key == "FocalLength") {
  $FocalLength = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = round(($FocalLength[0] / $FocalLength[1])) . " mm";
        }
        elseif ($key == "ExposureBiasValue") {
  $ExposureBiasValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = round(($ExposureBiasValue[0] / $ExposureBiasValue[1]), 1) . " EV";
        }
        elseif ($key == "ApertureValue") {
  $ApertureValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] ="F/" . round(($ApertureValue[0] / $ApertureValue[1]), 1);
        }
elseif ($key == "MaxApertureValue") {
  $MaxApertureValue = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] ="F/" . round((pow(sqrt(2),$MaxApertureValue[0] / $MaxApertureValue[1])), 1);   
}
elseif ($key == "MeteringMode") {
if($exif_info == 0) {$MeteringMode = "Unbekannt";}
if($exif_info == 1) {$MeteringMode = "Durchschnitt";}
  if($exif_info == 2) {$MeteringMode = "Mittenbetont";} 
if($exif_info == 3) {$MeteringMode = "Spot";}
if($exif_info == 4) {$MeteringMode = "Multi-Spot";}
if($exif_info == 5) {$MeteringMode = "Multi-Segment";}
if($exif_info == 6) {$MeteringMode = "Selektiv";}
if($exif_info == 255) {$MeteringMode = "Anders";}
  $exif_array[$exif_match[$key]] = ($MeteringMode);
}
        elseif ($key == "Flash") {
if($exif_info == 0) {$Flash = "Kein Blitz";}
if($exif_info == 1) {$Flash = "Blitz ausgelöst";}
if($exif_info == 5) {$Flash = "Blitz ausgelöst but strobe return light not detected";}
if($exif_info == 7) {$Flash = "Blitz ausgelöst and strobe return light detected";}
if($exif_info == 9) {$Flash = "Blitz ausgelöst, erzwungener Blitz";}
if($exif_info == 13) {$Flash = "Blitz ausgelöst, erzwungener Blitz, return light not detected";}
if($exif_info == 15) {$Flash = "Blitz ausgelöst, erzwungener Blitz, return light detected";}
if($exif_info == 16) {$Flash = "Blitz nicht ausgelöst";}
if($exif_info == 24) {$Flash = "Flash did not fire, auto mode";}
if($exif_info == 25) {$Flash = "Blitz ausgelöst, auto mode";}
if($exif_info == 29) {$Flash = "Blitz ausgelöst, auto mode, return light not detected";}
if($exif_info == 31) {$Flash = "Blitz ausgelöst, auto mode, return light detected";}
if($exif_info == 32) {$Flash = "keine Blitzfunktion";}
if($exif_info == 65) {$Flash = "Blitz ausgelöst, Rote Augen Reduktion";}
if($exif_info == 69) {$Flash = "Blitz ausgelöst, Rote Augen Reduktion, return light not detected";}
if($exif_info == 71) {$Flash = "Blitz ausgelöst, Rote Augen Reduktion, return light detected";}
if($exif_info == 73) {$Flash = "Blitz ausgelöst, erzwungener Blitz, Rote Augen Reduktion";}
if($exif_info == 77) {$Flash = "Blitz ausgelöst, erzwungener Blitz, Rote Augen Reduktion, return light not detected";}
if($exif_info == 79) {$Flash = "Blitz ausgelöst, erzwungener Blitz, Rote Augen Reduktion, red-eye reduction mode, return light detected";}
if($exif_info == 89) {$Flash = "Blitz ausgelöst, auto mode, Rote Augen Reduktion";}
if($exif_info == 93) {$Flash = "Blitz ausgelöst, auto mode, return light not detected, Rote Augen Reduktion";}
if($exif_info == 95) {$Flash = "Blitz ausgelöst, auto mode, return light detected, Rote Augen Reduktion";}
    $exif_array[$exif_match[$key]] = ($Flash);
        }
elseif ($key == "ExposureProgram") {
if($exif_info == 1) {$ExposureProgram = "Manuell";}
if($exif_info == 2) {$ExposureProgram = "Programmautomatik";}
if($exif_info == 3) {$ExposureProgram = "Zeitautomatik";}
if($exif_info == 4) {$ExposureProgram = "Blendenautomatik";}
if($exif_info == 5) {$ExposureProgram = "Stilleben";}
if($exif_info == 6) {$ExposureProgram = "Sport";}
  if($exif_info == 7) {$ExposureProgram = "Portrait";}
if($exif_info == 8) {$ExposureProgram = "Landschaft";}
  $exif_array[$exif_match[$key]] = ($ExposureProgram);
        }
elseif ($key == "ExposureMode") {
if($exif_info == 0) {$ExposureMode = "Automatisch";}
if($exif_info == 1) {$ExposureMode = "Manuell";}
  if($exif_info == 2) {$ExposureMode = "Auto Bracket";} 
if($exif_info == 255) {$ExposureMode = "Unbekannt";}
  $exif_array[$exif_match[$key]] = ($ExposureMode);
        }
elseif ($key == "WhiteBalance") {
if($exif_info == 0) {$WhiteBalance = "Automatisch";}
if($exif_info == 1) {$WhiteBalance = "Manuell";}
  $exif_array[$exif_match[$key]] = ($WhiteBalance);
}

// GPS EXIF START - Changes by Erik Groennerud - www.koelschwasser.de 8.2007

elseif ($key == "GPSLatitudeRef") {
if ($exif_info == N) {$GPSLatitudeRef = "Nord";$GPSLatfaktor = 1;}
  if ($exif_info == S) {$GPSLatitudeRef = "Süd"; $GPSLatfaktor = -1;}
  $exif_array[$exif_match[$key]] = ($GPSLatitudeRef);  
        }
        elseif ($key == "GPSLongitudeRef") {
if ($exif_info == E) {$GPSLongitudeRef = "Ost";$GPSLongfaktor = 1;} 
if ($exif_info == W) {$GPSLongitudeRef = "West";$GPSLongfaktor = -1;}
  $exif_array[$exif_match[$key]] = ($GPSLongitudeRef);
}
        elseif ($key == "GPSLatitude") {
        $GPSLatitude_h = explode("/", $exif_info[0]);
        $GPSLatitude_m = explode("/", $exif_info[1]);
        $GPSLatitude_s = explode("/", $exif_info[2]);
       
        $GPSLat_h = $GPSLatitude_h[0] / $GPSLatitude_h[1];
        $GPSLat_m = $GPSLatitude_m[0] / $GPSLatitude_m[1];
        $GPSLat_s = $GPSLatitude_s[0] / $GPSLatitude_s[1];
       
        $GPSLatGrad = $GPSLatfaktor * ($GPSLat_h + ($GPSLat_m + ($GPSLat_s / 60))/60);
       
        $exif_array[$exif_match[$key]] =  $GPSLatitudeRef . " " .$GPSLat_h . "° ". $GPSLat_m . "' " . $GPSLat_s . "'' ($GPSLatGrad)";
        }
        elseif ($key == "GPSLongitude") {
        $GPSLongitude_h = explode("/", $exif_info[0]);
        $GPSLongitude_m = explode("/", $exif_info[1]);
        $GPSLongitude_s = explode("/", $exif_info[2]);
       
        $GPSLong_h = $GPSLongitude_h[0] / $GPSLongitude_h[1];
        $GPSLong_m = $GPSLongitude_m[0] / $GPSLongitude_m[1];
        $GPSLong_s = $GPSLongitude_s[0] / $GPSLongitude_s[1];
       
        $GPSLongGrad = $GPSLongfaktor * ($GPSLong_h + ($GPSLong_m + ($GPSLong_s / 60))/60);
       
        $exif_array[$exif_match[$key]] =  $GPSLongitudeRef . " " . $GPSLong_h . "° ". $GPSLong_m . "' " . $GPSLong_s . "'' ($GPSLongGrad)";
        }
        elseif ($key == "GPSAltitude") {
      $GPSAltitude = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = ($GPSAltitude[0] / $GPSAltitude[1]) . " Meter über NN";
        }
elseif ($key == "GPSTrack") {
  $GPSTrack = explode("/", $exif_info);
          $exif_array[$exif_match[$key]] = ($GPSTrack[0] / $GPSTrack[1]) . "°";
        }
else {
          $exif_array[$exif_match[$key]] = $exif_info;
        }
      }
    }
  }
  return $exif_array;
}

Step 10
:flag-en: OPEN    templates/YOURTEMPLATE/details.html
:flag-de: ÖFFNE   templates/YOURTEMPLATE/details.html

:flag-en: FIND
:flag-de: FINDE
{image}
:flag-en: Replace with
:flag-de: Ersetze mit
{if media_src_big}               
<a id="thumb1" href="{media_src_big}" class="highslide" onclick="return hs.expand(this)">
{image}</a>
        {endif media_src_big}

:flag-en: FIND
:flag-de: FINDE
<tr>
<td valign="top" class="row2"><b>{lang_added_by}</b></td>
<td valign="top" class="row2">{user_name_link}</td>
</tr>
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
{if histogramm_image}
<tr>
<td valign="top" class="row1"><b>{histogramm}</b></td>
<td valign="top" class="row1">{histogramm_image}</td>
</tr>
{endif histogramm_image}

Step 11
:flag-en: OPEN    templates/YOURTEMPLATE/header.html
:flag-de: ÖFFNE   templates/YOURTEMPLATE/header.html

:flag-en: FIND
:flag-de: FINDE
{if has_rss}
<link rel="alternate" type="application/rss+xml" title="{rss_title}" href="{rss_url}" />
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
<script type="text/javascript" src="{template_url}/js/highslide.js"></script>
<script type="text/javascript">   
    hs.graphicsDir = '{template_url}/images/highlight/';
    hs.outlineType = 'rounded-white';
</script>

Step 12
:flag-en: OPEN    details.php
:flag-de: ÖFFNE   details.php

:flag-en: FIND
:flag-de: FINDE
//-----------------------------------------------------
//--- Show Image --------------------------------------
//-----------------------------------------------------
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
$hist_image = $image_row['image_media_file'] ;
$hist_file= "hist_".substr($hist_image,0,strlen($hist_image)-4).".png";
$hist_path = "data/media/".$cat_id."/";

$ext = substr($hist_image, strpos($hist_image, ".")+1, strlen($hist_image));
$AutorisedImageType = array ("jpg", "jpeg", "JPG", "JPEG");  // Dateitypen für die das Histogramm gezeigt werden soll

if (in_array($ext, $AutorisedImageType)) {
   $histogramm_image = "<img src='histo.php?hist_image=".$hist_image."&hist_file=".$hist_file."&hist_path=".$hist_path."' border=\"1\">";
} else {
   $histogramm_image = REPLACE_EMPTY;
}

$site_template->register_vars(array(
   "histogramm" => "Histogramm:",
   "histogramm_image" => $histogramm_image
));
//-------------------------------------------------------------------------------------------

Step 13
:flag-en: OPEN    templates/YOURTEMPLATE/thumbnail_bit.html
:flag-de: ÖFFNE   templates/YOURTEMPLATE/thumbnail_bit.html

:flag-en: FIND
:flag-de: FINDE
{thumbnail}
:flag-en: Replace with
:flag-de: Ersetze mit
{if user_loggedin}<a href="{media_src}" class="highslide" onclick="return hs.expand(this, {captionId: 'caption1'})">
<img src="./data/thumbnails/{cat_id}/{thumbnail_file_name}" alt="Highslide JS"
title="Click to enlarge" height="60" /></a>{endif user_loggedin}
{if user_loggedout}
{thumbnail}
{endif user_loggedout}

Step 14
:flag-en: OPEN    templates/YOURTEMPLATE/style.css
:flag-de: ÖFFNE   templates/YOURTEMPLATE/style.css

:flag-en: Add the End of the File
:flag-de: Kopiere folgendes am Ende der Datei

.highslide-wrapper div {
    font-family: Verdana, Helvetica;
    font-size: 10pt;
}
.highslide {
cursor: url(images/highlight/zoomin.cur), pointer;
    outline: none;
    text-decoration: none;
}
.highslide-active-anchor img {
visibility: hidden;
}
.highslide img {
border: 2px solid gray;
}
.highslide:hover img {
border: 2px solid white;
}

.highslide-wrapper, .rounded-white {
background: white;
}
.highslide-image {
    border: 2px solid white;
}
.highslide-image-blur {
}
.highslide-caption {
    display: none;
   
    border: 2px solid white;
    border-top: none;
    font-family: Verdana, Helvetica;
    font-size: 10pt;
    padding: 5px;
    background-color: white;
}
.highslide-loading {
    display: block;
color: black;
font-size: 8pt;
font-family: sans-serif;
font-weight: bold;
    text-decoration: none;
padding: 2px;
border: 1px solid black;
    background-color: white;
   
    padding-left: 22px;
    background-image: url(images/highlight/loader.white.gif);
    background-repeat: no-repeat;
    background-position: 3px 1px;
}
a.highslide-credits,
a.highslide-credits i {
    padding: 2px;
    color: silver;
    text-decoration: none;
font-size: 10px;
}
a.highslide-credits:hover,
a.highslide-credits:hover i {
    color: white;
    background-color: gray;
}

a.highslide-full-expand {
background: url(images/highlight/fullexpand.gif) no-repeat;
display: block;
margin: 0 10px 10px 0;
width: 34px;
height: 34px;
}

Step 15
:flag-en: OPEN    includes/db_field_definitions.php
:flag-de: ÖFFNE   includes/db_field_definitions.php


:flag-en: FIND
:flag-de: FINDE
?>
:flag-en: DIRECT BEFORE, ADD
//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
$additional_image_fields['image_Make'] = array($lang['exif_Make'], "text", 0);
$additional_image_fields['image_Model'] = array($lang['exif_Model'], "text", 0);
$additional_image_fields['image_DateTimeOriginal'] = array($lang['exif_DateTimeOriginal'], "text", 0);
$additional_image_fields['image_ISOSpeedRatings'] = array($lang['exif_ISOSpeedRatings'], "text", 0);
$additional_image_fields['image_ExposureTime'] = array($lang['exif_ExposureTime'], "text", 0);
$additional_image_fields['image_FNumber'] = array($lang['exif_FNumber'], "text", 0);
$additional_image_fields['image_FocalLength'] = array($lang['exif_FocalLength'], "text", 0);
$additional_image_fields['image_ExposureBiasValue'] = array($lang['exif_ExposureBiasValue'], "text", 0);
$additional_image_fields['image_ApertureValue'] = array($lang['exif_ApertureValue'], "text", 0);
$additional_image_fields['image_MaxApertureValue'] = array($lang['exif_MaxApertureValue'], "text", 0);
$additional_image_fields['image_MeteringMode'] = array($lang['exif_MeteringMode'], "text", 0);
$additional_image_fields['image_Flash'] = array($lang['exif_Flash'], "text", 0);
$additional_image_fields['image_ExposureProgram'] = array($lang['exif_ExposureProgram'], "text", 0);
$additional_image_fields['image_ExposureMode'] = array($lang['exif_ExposureMode'], "text", 0);
$additional_image_fields['image_WhiteBalance'] = array($lang['exif_WhiteBalance'], "text", 0);
$additional_image_fields['image_GPSLatitude'] = array($lang['exif_GPSLatitude'], "text", 0);
$additional_image_fields['image_GPSLatitudeRef'] = array($lang['exif_GPSLatitudeRef'], "text", 0);
$additional_image_fields['image_GPSLongitude'] = array($lang['exif_GPSLongitude'], "text", 0);
$additional_image_fields['image_GPSLongitudeRef'] = array($lang['exif_GPSLongitudeRef'], "text", 0);
$additional_image_fields['image_GPSAltitude'] = array($lang['exif_GPSAltitude'], "text", 0);
$additional_image_fields['image_caption'] = array($lang['iptc_caption'], "text", 0);                       
$additional_image_fields['image_caption_writer'] = array($lang['iptc_caption_writer'], "text", 0);                 
$additional_image_fields['image_headline'] = array($lang['iptc_headline'], "text", 0);                       
$additional_image_fields['image_special_instructions'] = array($lang['iptc_special_instructions'], "text", 0);           
$additional_image_fields['image_byline']  = array($lang['iptc_byline'], "text", 0);                         
$additional_image_fields['image_byline_title'] = array($lang['iptc_byline_title'], "text", 0);                   
$additional_image_fields['image_credit'] = array($lang['iptc_credit'], "text", 0);                         
$additional_image_fields['image_source'] = array($lang['iptc_source'], "text", 0);                         
$additional_image_fields['image_object_name'] = array($lang['iptc_object_name'], "text", 0);                   
$additional_image_fields['image_date_created'] = array($lang['iptc_date_created'], "text", 0);                   
$additional_image_fields['image_city'] = array($lang['iptc_city'], "text", 0);                           
$additional_image_fields['image_state'] = array($lang['iptc_state'], "text", 0);                         
$additional_image_fields['image_country'] = array($lang['iptc_country'], "text", 0);                       
$additional_image_fields['image_original_transmission_reference'] = array($lang['iptc_original_transmission_reference'], "text", 0);
$additional_image_fields['image_category'] = array($lang['iptc_category'], "text", 0);
$additional_image_fields['image_supplemental_category'] = array($lang['iptc_supplemental_category'], "text", 0);                       
$additional_image_fields['image_keyword'] = array($lang['iptc_keyword'], "text", 0);                       
$additional_image_fields['image_copyright_notice'] = array($lang['iptc_copyright_notice'], "text", 0);     
//-------------------------------------------------------------------------------------------
:flag-de: FÜGE DIREKT DARÜBER EIN
//--------------------------------------------------------------------------------------------
// --- MOD-ALLINONE -------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------
$additional_image_fields['image_Make'] = array($lang['exif_Make'], "text", 0);
$additional_image_fields['image_Model'] = array($lang['exif_Model'], "text", 0);
$additional_image_fields['image_DateTimeOriginal'] = array($lang['exif_DateTimeOriginal'], "text", 0);
$additional_image_fields['image_ISOSpeedRatings'] = array($lang['exif_ISOSpeedRatings'], "text", 0);
$additional_image_fields['image_ExposureTime'] = array($lang['exif_ExposureTime'], "text", 0);
$additional_image_fields['image_FNumber'] = array($lang['exif_FNumber'], "text", 0);
$additional_image_fields['image_FocalLength'] = array($lang['exif_FocalLength'], "text", 0);
$additional_image_fields['image_ExposureBiasValue'] = array($lang['exif_ExposureBiasValue'], "text", 0);
$additional_image_fields['image_ApertureValue'] = array($lang['exif_ApertureValue'], "text", 0);
$additional_image_fields['image_MaxApertureValue'] = array($lang['exif_MaxApertureValue'], "text", 0);
$additional_image_fields['image_MeteringMode'] = array($lang['exif_MeteringMode'], "text", 0);
$additional_image_fields['image_Flash'] = array($lang['exif_Flash'], "text", 0);
$additional_image_fields['image_ExposureProgram'] = array($lang['exif_ExposureProgram'], "text", 0);
$additional_image_fields['image_ExposureMode'] = array($lang['exif_ExposureMode'], "text", 0);
$additional_image_fields['image_WhiteBalance'] = array($lang['exif_WhiteBalance'], "text", 0);
$additional_image_fields['image_GPSLatitude'] = array($lang['exif_GPSLatitude'], "text", 0);
$additional_image_fields['image_GPSLatitudeRef'] = array($lang['exif_GPSLatitudeRef'], "text", 0);
$additional_image_fields['image_GPSLongitude'] = array($lang['exif_GPSLongitude'], "text", 0);
$additional_image_fields['image_GPSLongitudeRef'] = array($lang['exif_GPSLongitudeRef'], "text", 0);
$additional_image_fields['image_GPSAltitude'] = array($lang['exif_GPSAltitude'], "text", 0);
$additional_image_fields['image_GPSTrack'] = array($lang['exif_GPSTrack'], "text", 0);
$additional_image_fields['image_caption'] = array($lang['iptc_caption'], "text", 0);                       
$additional_image_fields['image_caption_writer'] = array($lang['iptc_caption_writer'], "text", 0);                 
$additional_image_fields['image_headline'] = array($lang['iptc_headline'], "text", 0);                       
$additional_image_fields['image_special_instructions'] = array($lang['iptc_special_instructions'], "text", 0);           
$additional_image_fields['image_byline']  = array($lang['iptc_byline'], "text", 0);                         
$additional_image_fields['image_byline_title'] = array($lang['iptc_byline_title'], "text", 0);                   
$additional_image_fields['image_credit'] = array($lang['iptc_credit'], "text", 0);                         
$additional_image_fields['image_source'] = array($lang['iptc_source'], "text", 0);                         
$additional_image_fields['image_object_name'] = array($lang['iptc_object_name'], "text", 0);                   
$additional_image_fields['image_date_created'] = array($lang['iptc_date_created'], "text", 0);                   
$additional_image_fields['image_city'] = array($lang['iptc_city'], "text", 0);                           
$additional_image_fields['image_state'] = array($lang['iptc_state'], "text", 0);                         
$additional_image_fields['image_country'] = array($lang['iptc_country'], "text", 0);                       
$additional_image_fields['image_original_transmission_reference'] = array($lang['iptc_original_transmission_reference'], "text", 0);
$additional_image_fields['image_category'] = array($lang['iptc_category'], "text", 0);
$additional_image_fields['image_supplemental_category'] = array($lang['iptc_supplemental_category'], "text", 0);                       
$additional_image_fields['image_keyword'] = array($lang['iptc_keyword'], "text", 0);                       
$additional_image_fields['image_copyright_notice'] = array($lang['iptc_copyright_notice'], "text", 0);     
//-------------------------------------------------------------------------------------------

Step 16
:flag-en: OPEN    lang/<yourlanguage>/main.php
:flag-de: ÖFFNE   lang/<yourlanguage>/main.php

:flag-en: FIND
$lang['exif_make'] = "Make:";
$lang['exif_model'] = "Model:";
$lang['exif_datetime'] = "Date created:";
$lang['exif_isospeed'] = "ISO speed:";
$lang['exif_exposure'] = "Exposure time:";
$lang['exif_aperture'] = "Aperture value:";
$lang['exif_focallen'] = "Focal length:";
:flag-de: FINDE
$lang['exif_make'] = "Hersteller:";
$lang['exif_model'] = "Modell:";
$lang['exif_datetime'] = "Aufnahmedatum:";
$lang['exif_isospeed'] = "ISO-Zahl:";
$lang['exif_exposure'] = "Belichtungszeit:";
$lang['exif_aperture'] = "Blende:";
$lang['exif_focallen'] = "Brennweite:";

:flag-en: Replace with
$lang['exif_Make'] = "Make:";
$lang['exif_Model'] = "Modell:";
$lang['exif_DateTimeOriginal'] = "Exposure,Date and Time:";
$lang['exif_ISOSpeedRatings'] = "ISO Speed Rating:";
$lang['exif_ExposureTime'] = "Exposure Time:";
$lang['exif_FNumber'] = "Aperture:";
$lang['exif_FocalLength'] = "Focal Length (Object Lens):";
$lang['exif_ExposureBiasValue'] = "Exposure Bias Value:";
$lang['exif_ApertureValue'] = "Aperture Value:";
$lang['exif_MaxApertureValue'] = "Max Aperture Value:";
$lang['exif_MeteringMode'] = "Metering Mode:";
$lang['exif_Flash'] = "Flash:";
$lang['exif_ExposureProgram'] = "Exposure Program:";
$lang['exif_ExposureMode'] = "Exposure Mode:";
$lang['exif_WhiteBalance'] = "Whitebalance:";
$lang['exif_UndefinedTag:0x0095'] = "Objektiv Daten:";
$lang['exif_GPSLatitudeRef'] = "GPS Latitude Referenz:";
$lang['exif_GPSLatitude'] = "GPS Latitude:";
$lang['exif_GPSLongitudeRef'] = "GPS Longitude Referenz";
$lang['exif_GPSLongitude'] = "GPS Longitude:";
$lang['exif_GPSAltitude'] = "GPS Altitude:";
:flag-de: Ersetze mit
$lang['exif_Make'] = "Hersteller:";
$lang['exif_Model'] = "Modell:";
$lang['exif_DateTimeOriginal'] = "Aufnahme,Datum und Zeit:";
$lang['exif_ISOSpeedRatings'] = "ISO Wert:";
$lang['exif_ExposureTime'] = "Belichtungszeit:";
$lang['exif_FNumber'] = "Blende:";
$lang['exif_FocalLength'] = "Brennweite (Objektiv):";
$lang['exif_ExposureBiasValue'] = "Belichtungsabweichung:";
$lang['exif_ApertureValue'] = "Blendenöffnungswert:";
$lang['exif_MaxApertureValue'] = "Maximaler Blendenöffnungswert:";
$lang['exif_MeteringMode'] = "Belichtungsmessung:";
$lang['exif_Flash'] = "Blitz:";
$lang['exif_ExposureProgram'] = "Belichtungsprogramm:";
$lang['exif_ExposureMode'] = "Belichtungsmodus:";
$lang['exif_WhiteBalance'] = "Weißabgleich:";
$lang['exif_GPSLatitudeRef'] = "GPS Breitengrad Referenz:";
$lang['exif_GPSLatitude'] = "GPS Breitengrad:";
$lang['exif_GPSLongitudeRef'] = "GPS Längengrad Referenz";
$lang['exif_GPSLongitude'] = "GPS Längengrad:";
$lang['exif_GPSAltitude'] = "GPS Höhe:";
$lang['exif_GPSTrack'] = "GPS Blickrichtung:";

:flag-en: FIND
:flag-de: FINDE
$lang['or'] = "
:flag-en: DIRECT AFTER, ADD
:flag-de: FÜGE DIREKT DARUNTER EIN
$lang['image_Make_only'] = "Hersteller";
$lang['image_Model_only'] = "Modell";
$lang['image_DateTimeOriginal_only'] = "Aufnahme,Datum und Zeit";
$lang['image_ISOSpeedRatings_only'] = "ISO Wert";
$lang['image_ExposureTime_only'] = "Belichtungszeit";
$lang['image_FNumber_only'] = "Blende";
$lang['image_FocalLength_only'] = "Brennweite (Objektiv)";
$lang['image_ExposureBiasValue_only'] = "Belichtungsabweichung";
$lang['image_ApertureValue_only'] = "Blendenöffnungswert";
$lang['image_MaxApertureValue_only'] = "Max. Blendenöffnungswert";
$lang['image_MeteringMode_only'] = "Belichtungsmessung";
$lang['image_Flash_only'] = "Blitz";
$lang['image_ExposureProgram_only'] = "Belichtungsprogramm";
$lang['image_ExposureMode_only'] = "Belichtungsmodus";
$lang['image_WhiteBalance_only'] = "Weißabgleich";
$lang['image_GPSLatitudeRef_only'] = "GPS Breitengrad Referenz";
$lang['image_GPSLatitude_only'] = "GPS Breitengrad";
$lang['image_GPSLongitudeRef_only'] = "GPS Längengrad Referenz";
$lang['image_GPSLongitude_only'] = "GPS Längengrad";
$lang['image_GPSAltitude_only'] = "GPS Höhe";
$lang['image_GPSTrack_only'] = "GPS Blickrichtung";
$lang['image_caption_only'] = "Objektbeschreibung:";
$lang['image_caption_writer_only'] = "Autor:";
$lang['image_headline_only'] = "Überschrift:";
$lang['image_special_instructions_only'] = "Besondere Hinweise:";
$lang['image_byline_only'] = "Name des Autors:";
$lang['image_byline_title_only'] = "Titel des Autors:";
$lang['image_credit_only'] = "Bildrechte:";
$lang['image_source_only'] = "Quelle:";
$lang['image_object_name_only'] = "Objekt Name:";
$lang['image_date_created_only'] = "Erstellt am:";
$lang['image_city_only'] = "Stadt/Ort:";
$lang['image_state_only'] = "Bundesland:";
$lang['image_country_only'] = "Ländername:";
$lang['image_original_transmission_reference_only'] = "Auftraggeber:";
$lang['image_category_only'] = "Kategorien:";
$lang['image_supplemental_category_only'] = "zusätzliche Kategorie:";
$lang['image_keyword_only'] = "Stichworte:";
$lang['image_copyright_notice_only'] = "Copyright-Vermerk:";

Step 17
:flag-en: OPEN    includes/constants.php
:flag-de: ÖFFNE   includes/constants.php

:flag-en: FIND
:flag-de: FINDE
define('MIN_SEARCH_KEYWORD_LENGTH', 3);
define('MAX_SEARCH_KEYWORD_LENGTH', 25);

:flag-en: Replace with
:flag-de: Ersetze mit
define('MIN_SEARCH_KEYWORD_LENGTH', 1);
define('MAX_SEARCH_KEYWORD_LENGTH', 100);

Step 18
:flag-en: OPEN    includes/search_utils.php
:flag-de: ÖFFNE   includes/search_utils.php

:flag-en: FIND
:flag-de: FINDE
$search_match_fields = array(
  "image_name" => "name_match",
  "image_description" => "desc_match",
  "image_keywords" => "keys_match"
:flag-en: Replace with
:flag-de: Ersetze mit
$search_match_fields = array(
  "image_name" => "name_match",
  "image_description" => "desc_match",
  "image_keywords" => "keys_match",
  "image_Make" => "Make_match",
  "image_Model" => "Model_match",
  "image_DateTimeOriginal" => "DateTimeOriginal_match",
  "image_ISOSpeedRatings" => "ISOSpeedRatings_match",
  "image_ExposureTime" => "ExposureTime_match",
  "image_FNumber" => "FNumber_match",
  "image_FocalLength" => "FocalLength_match",
  "image_ExposureBiasValue" => "ExposureBiasValue_match",
  "image_ApertureValue" => "ApertureValue_match",
  "image_MaxApertureValue" => "MaxApertureValue_match",
  "image_MeteringMode" => "MeteringMode_match",
  "image_Flash" => "Flash_match",
  "image_ExposureProgram" => "ExposureProgram_match",
  "image_ExposureMode" => "ExposureMode_match",
  "image_WhiteBalance" => "WhiteBalance_match",
  "image_GPSLatitude" => "GPSLatitude_match",
  "image_GPSLatitudeRef" => "GPSLatitudeRef_match",
  "image_GPSLongitude" => "GPSLongitude_match",
  "image_GPSLongitudeRef" => "GPSLongitudeRef_match",
  "image_GPSAltitude" => "GPSAltitude_match",
  "image_GPSTrack" => "GPSTrack_match",
"image_caption" =>"caption_match",
"image_caption_writer" =>"caption_writer_match",
"image_headline" =>"headline_match",
"image_special_instructions" =>"special_instructions_match",
"image_byline" =>"byline_match",
"image_byline_title" =>"byline_title_match",
"image_credit" =>"credit_match",
"image_source" =>"source_match",
"image_object_name" =>"object_name_match",
"image_date_created" =>"date_created_match",
"image_city" =>"city_match",
"image_state" =>"state_match",
"image_country" =>"country_match",
"image_original_transmission_reference" =>"original_transmission_reference_match",
"image_category" =>"category_match",
"image_supplemental_category" =>"supplemental_category_match",
"image_keyword" =>"keyword_match",
"image_copyright_notice" =>"copyright_notice_match"

Step 19
:flag-en: OPEN    templates/dein_templates/search_form.html
:flag-de: ÖFFNE   templates/dein_templates/search_form.html

:flag-en: FIND
:flag-de: FINDE
<td nowrap="nowrap"><input type="radio" name="search_fields" value="all" checked="checked" /> {lang_all_fields}</td>
<td nowrap="nowrap">&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_name" /> {lang_name_only}</td>
</tr>
<tr>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_description" /> {lang_description_only}</td>
<td nowrap="nowrap">&nbsp;</td>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_keywords" /> {lang_keywords_only}</td>
:flag-en: Replace with
:flag-de: Ersetze mit
<select name="search_fields" size="1">
<optgroup label="Allgemein">
<option value="all">{lang_all_fields}</option>
<option value="image_name">{lang_name_only}</option>
<option value="image_description">{lang_description_only}</option>
<option value="image_keywords">{lang_keywords_only}</option>
</optgroup>
<optgroup label="Exif">
<option value="image_Make">{lang_image_Make_only}</option>
<option value="image_Model">{lang_image_Model_only}</option>
<option value="image_DateTimeOriginal">{lang_image_DateTimeOriginal_only}</option>
<option value="image_ISOSpeedRatings">{lang_image_ISOSpeedRatings_only}</option>
<option value="image_ExposureTime">{lang_image_ExposureTime_only}</option>
<option value="image_FNumber">{lang_image_FNumber_only}</option>
<option value="image_FocalLength">{lang_image_FocalLength_only}</option>
<option value="image_ExposureBiasValue">{lang_image_ExposureBiasValue_only}</option>
<option value="image_ApertureValue">{lang_image_ApertureValue_only}</option>
<option value="image_MaxApertureValue">{lang_image_MaxApertureValue_only}</option>
<option value="image_MeteringMode">{lang_image_MeteringMode_only}</option>
<option value="image_Flash">{lang_image_Flash_only}</option>
<option value="image_ExposureProgram">{lang_image_ExposureProgram_only}</option>
<option value="image_ExposureMode">{lang_image_ExposureMode_only}</option>
<option value="image_WhiteBalance">{lang_image_WhiteBalance_only}</option>
<option value="image_GPSLatitude">{lang_image_GPSLatitude_only}</option>
<option value="image_GPSLatitudeRef">{lang_image_GPSLatitudeRef_only}</option>
<option value="image_GPSLongitude">{lang_image_GPSLongitude_only}</option>
<option value="image_GPSLongitudeRef">{lang_image_GPSLongitudeRef_only}</option>
<option value="image_GPSAltitude">{lang_image_GPSAltitude_only}</option>
<option value="image_GPSTrack">{lang_image_GPSTrack_only}</option>
</optgroup>
     </select>

:flag-en: FIND
:flag-de: FINDE
<td nowrap="nowrap"><input type="radio" name="search_fields" value="all" checked="checked" /> {lang_all_fields}</td>
<td nowrap="nowrap">&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_name" /> {lang_name_only}</td>
</tr>
<tr>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_description" /> {lang_description_only}</td>
<td nowrap="nowrap">&nbsp;</td>
<td nowrap="nowrap"><input type="radio" name="search_fields" value="image_keywords" /> {lang_keywords_only}</td>
:flag-en: Replace with
:flag-de: Ersetze mit
<select name="search_fields" size="1">
<optgroup label="Allgemein">
<option value="all">{lang_all_fields}</option>
<option value="image_name">{lang_name_only}</option>
<option value="image_description">{lang_description_only}</option>
<option value="image_keywords">{lang_keywords_only}</option>
</optgroup>
<optgroup label="IPTC">
<option value="image_caption">{lang_image_caption_only}</option>                                     
<option value="image_caption_writer">{lang_image_caption_writer_only}</option>                 
<option value="image_headline">{lang_image_headline_only}</option>                       
<option value="image_special_instructions">{lang_image_special_instructions_only}</option>           
<option value="image_byline">{lang_image_byline_only}</option>                         
<option value="image_byline_title">{lang_image_byline_title_only}</option>                   
<option value="image_credit">{lang_image_credit_only}</option>                         
<option value="image_source">{lang_image_source_only}</option>                         
<option value="image_object_name">{lang_image_object_name_only}</option>                   
<option value="image_date_created">{lang_image_date_created_only}</option>                   
<option value="image_city">{lang_image_city_only}</option>                           
<option value="image_state">{lang_image_state_only}</option>                         
<option value="image_country">{lang_image_country_only}</option>                       
<option value="image_original_transmission_reference">{lang_image_original_transmission_reference_only}</option>
<option value="image_category">{lang_image_category_only}</option>                       
<option value="image_supplemental_category">{lang_image_supplemental_category_only}</option>         
<option value="image_keyword">{lang_image_keyword_only}</option>                       
<option value="image_copyright_notice">{lang_image_copyright_notice_only}</option>
</optgroup>
     </select>

Finish
Fertig
Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
Post by: rinaldos on October 07, 2008, 08:29:32 PM
Wow,
da hast du dir viel Arbeit gemacht die MOD's zusammenzuführen. :-) Ist auf jedenfall für jemanden der neu installiert eine einfache Ergänzung :-)
Daumen hoch :-)

Gruß
Ingo
Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
Post by: Rembrandt on October 07, 2008, 09:14:21 PM
Hi!
Modifikationen sind nicht von mir selber erstellt, bis auf das Highlight in der Details Ansicht.[/b]
...
    Folgende Features bringt diese Modifikation mitsich
    • Bilder werden beim Upload automatisch verkleinert
    • Wasserzeichen wird auf den Bilder gedruckt
    • Ein Histogramm wird erstellt
    • EXIF V.1.7.6 in DB + Suchfelder Erweiterung
    • IPTC V.1.7.6 Suchfelder Erweiterung
    • Bilder können in der Details ansicht durch einen Klick in die Originalgröße angesehen werden mit Highlight Effeckt
    • thumbnails können ebenfalls durch einen Highlight Effeckt größer angezeigt werden
    ....
    die EXIF und IPTC erweiterung fehlen dir aber in dem "multimaxi"  :) mod.
    oder bist noch nicht fertig?

    mfg Andi[/list]
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 08, 2008, 01:59:04 PM
    Ich hatte es wirklich vergessen  :oops:, entschuldige!
    Habe es soebend eingebaut!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: deadlydozen on October 11, 2008, 05:55:18 PM
    Hallo,

    gibt es eine Möglichkeit das bei dem "Auto copy original file to /big/ folder" Modifikation alle Bilder in den big Folder gespeichert werden ?

    Die Modifikation klappt so weit ganz gut. Bis auf eine Sache. Ich habe im ACP das Format 600 * 450 px gewählt.

    Wird jetzt vom User ein Bild 1024 * 768 hoch geladen wird es ja auch 600 * 450 verkleinert und in dem media/1 Ordner gespeichert. Das 1024 * 768 wird im Big Ordner abgelegt.

    Lade ich jetzt aber ein 400 * 300 px  Bild hoch wird es nur im media/1 Ordner gespeichert und nicht im Big Ordner.

    Gibt es eine Möglichkeit das jedes Bild in den Big Ordner geladen wird, unabhängig davon ob es verkleinert wurde oder nicht ?

    lg
    Michael
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 11, 2008, 06:39:40 PM
    Das wirst du im mod Forum der Mod vom Mod-Ersteller erfragen müssen, ich kann es hier dann erweitern!
    http://www.4homepages.de/forum/index.php?topic=7700.msg22313#msg22313
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: deadlydozen on October 11, 2008, 06:46:01 PM
    Hi,

    sorry da habe ich nihct auffgepasst, ich habe es noch mal im Mod Forum gepostet.

    PS.

    Bei deiner Auflistung unter Step 18 ist ein kleiner Fehler drin ....

      "image_GPSTrack" => "GPSTrack_match"

    da fehlt ein " , "

      "image_GPSTrack" => "GPSTrack_match",


    lg
    Michael
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 11, 2008, 07:00:12 PM
    Ja stimmt, danke!
    behoben!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: deadlydozen on October 12, 2008, 08:40:06 AM
    Hi,

    das ausführen der install_Exif_Word_match.php klappt nicht. In Zeile 86 finde ich das ...

    <form action="SQL_Exif_Word_match.php" name="form" method="post">

    Ich habe den Dateinamen geändert, dann ging es.

    lg
    Michael
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 12, 2008, 01:29:35 PM
    Danke,

    wurde gefixxt!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: ps-net on October 22, 2008, 09:57:37 PM
    hallo,
    habe alles nach anleitung gemacht, leider habe ich nun folgende fehlermeldung....

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /mounted-storage/home101a/sub004/sc62804-IARK/www/Sportfotos-Scheiber/lang/deutsch/main.php on line 385
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 22, 2008, 11:35:59 PM
    Gehe mal in dem Ordner:

    lang/deutsch/main.php

    Und kopiere alles aus der Datei hier hinein, bitte zwischen [*php] und [*/php] (Ohne die *)
    Beispiel:
    [*php] DER GANZE TEXT AUS DER MAIN.PHP [*/PHP] (Ohne die *)

    oder Hänge die Datei als Anhang an!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: ps-net on October 23, 2008, 12:24:48 PM
    Removed.
    Next time attach the file to your reply, do not publish it's entire content.
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 23, 2008, 02:01:53 PM
    öffne:
    lang/deutsch/main.php
    Suche:
    Code: [Select]
    $lang['or'] = "Ersetze mit:
    Code: [Select]
    $lang['or'] = "ODER";
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: ps-net on October 23, 2008, 02:26:59 PM
    fehler bleibt leider bestehen

    Parse error: syntax error, unexpected '"' in /mounted-storage/home101a/sub004/sc62804-IARK/www/Sportfotos-Scheiber/lang/deutsch/main.php on line 423
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: KurtW on October 24, 2008, 05:55:59 AM
    Hallo Phisker B,

    folgenden Link auch immer für die main.php beherzigen  :wink:
    http://de.selfhtml.org/html/referenz/zeichen.htm#benannte_iso8859_1


    Gruß
    Kurt
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on October 24, 2008, 11:21:55 AM
    @ PS-NET,
    habe deine PN erhalten werde heute abend mal vorbeischauen!

    @ Kurtw :D, dass weis ich hehe :wink:
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: fulod on April 15, 2009, 07:10:50 PM
    Hi

    Ich hab deinen Mod eingebaut, Jedoch hab ich Probleme damit wenn ich den Auto Reziser verwende das dieser die IPTC Daten raushaut. Wenn ich diesen abstelle gehts ohne Probleme.
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on April 15, 2009, 07:26:27 PM
    Ich glaube das liegt an dem Rezizer selber!
    Frag dort bei der Mod mal nach: http://www.4homepages.de/forum/index.php?topic=7700.0
    Ich hab in Moment kein 4images am laufen, bzw. habe keine Zeit dafür gerade, bin sehr viel im Stress. Aber ich meine das wurde dort mal besprochen !? Schau da mal nach, ich pers. habe noch nie mit IPTC gearbeitet!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: fulod on April 17, 2009, 07:12:46 AM
    Eine Frage hätte ich noch, was denkst du wie schwer es ist einen MultiUpload mit einzubauen?
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on April 17, 2009, 10:45:00 AM
    Der Einbau ist in der Regel nicht schwer, nur sollte man bedenken ob auch die anderen Modifikationen sich damit vertragen!
    Meinst du jetzt zusätzlich oder hier im Gesamten MOD-ALLINONE?
    Es gibt ja hier Mods für ein Multiplugin.
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: fulod on April 17, 2009, 12:04:36 PM
    Ich meine im Bezug auf den AIO Mod
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on April 17, 2009, 12:48:52 PM
    Also meinst du,
    dass ich das hier mit in der Anleitung einfügen soll?

    Also generell kannst du eine Multiupload Mod installieren!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and m
    Post by: fulod on April 17, 2009, 06:30:21 PM
    Falls es keine großen Umstände macht, ja bitte, ich habe alles bisher probiert jedoch immer ohne Erfolg mit Resize und dem verschieben in den big ordner
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on April 18, 2009, 12:02:35 AM
    Ich werde ich die Tage mal daransetzen!
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: fulod on April 25, 2009, 11:45:13 AM
    Hi wollte kurz nachfragen wie es aussieht :)
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: lceman on May 10, 2009, 08:35:01 PM
    Ich werde ich die Tage mal daransetzen!


    hey Benny, das wäre super!!  8)
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: GaYan on May 15, 2009, 10:54:09 PM
    demo please ?
    Title: Re: [MOD-ALLINONE] One Image three size / Ein Bild drei Größen + Highlight and more
    Post by: Sunny C. on May 16, 2009, 12:38:15 AM
    Hallo zusammen,

    also ich habe grad wenig Zeit, aber ich habe schon etwas angefangen. Wann genau ich mehr Zeit dafür finde, weis ich leider nicht!

    @ ALL
    no demo available
    keine demo zum zeigen