osCmax v2.5 User Manual
Page 2 of 2 FirstFirst 12
Results 11 to 13 of 13

Dynamic Mo Pics Auto Thumbnail Creation

This is a discussion on Dynamic Mo Pics Auto Thumbnail Creation within the osCmax v2 Customization/Mods forums, part of the osCmax v2.0 Forums category; for anyone who wants it, already modified, simplye backup the following file catalog/includes/functions/html_output.php Edit the file (not the backup) Delete ...

      
  1. #11
    Member
    Join Date
    Feb 2006
    Posts
    63
    Rep Power
    0


    Default RE: Cash Reward $150 for better mopics

    for anyone who wants it, already modified, simplye backup the following file

    catalog/includes/functions/html_output.php

    Edit the file (not the backup)

    Delete everything in the file (every single thing)

    Copy the stuff below and paste it into the file, then upload it to the same location.

    You backup in case it does not work for you. When done, goto admin, configuration, Dynamic Mopics and set the following

    Big images Directory = /
    Thumbnail Images Directory = /

    Thats what I have done and it worked perfect.

    Here is the HTML output file content. make sure you get it all

    Code:
    <?php
    /*
      $Id: html_output.php,v 1.56 2003/07/09 01:15:48 hpdl Exp $
    
      osCommerce, Open Source E-Commerce Solutions
      http://www.oscommerce.com
    
      Copyright (c) 2003 osCommerce
    
      Released under the GNU General Public License
    */
    
    ////
    // The HTML href link wrapper function
      function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
        global $request_type, $session_started, $SID;
    
        if (!tep_not_null($page)) {
          die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine the page link!<br><br>');
        }
    
        if ($connection == 'NONSSL') {
          $link = HTTP_SERVER . DIR_WS_HTTP_CATALOG;
        } elseif ($connection == 'SSL') {
          if (ENABLE_SSL == true) {
            $link = HTTPS_SERVER . DIR_WS_HTTPS_CATALOG;
          } else {
            $link = HTTP_SERVER . DIR_WS_HTTP_CATALOG;
          }
        } else {
          die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine connection method on a link!<br><br>Known methods: NONSSL SSL</b><br><br>');
        }
    
        if (tep_not_null($parameters)) {
          $link .= $page . '?' . tep_output_string($parameters);
          $separator = '&';
        } else {
          $link .= $page;
          $separator = '?';
        }
    
        while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);
    
    // Add the session ID when moving from different HTTP and HTTPS servers, or when SID is defined
        if ( ($add_session_id == true) && ($session_started == true) && (SESSION_FORCE_COOKIE_USE == 'False') ) {
          if (tep_not_null($SID)) {
            $_sid = $SID;
          } elseif ( ( ($request_type == 'NONSSL') && ($connection == 'SSL') && (ENABLE_SSL == true) ) || ( ($request_type == 'SSL') && ($connection == 'NONSSL') ) ) {
            if (HTTP_COOKIE_DOMAIN != HTTPS_COOKIE_DOMAIN) {
              $_sid = tep_session_name() . '=' . tep_session_id();
            }
          }
        }
    
        if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) ) {
          while (strstr($link, '&&')) $link = str_replace('&&', '&', $link);
    
          $link = str_replace('?', '/', $link);
          $link = str_replace('&', '/', $link);
          $link = str_replace('=', '/', $link);
    
          $separator = '?';
        }
    
        if (isset($_sid)) {
          $link .= $separator . tep_output_string($_sid);
        }
    
        return $link;
      }
    
    ////
    // The HTML image wrapper function
      function tep_image($src, $alt = '', $width = '', $height = '', $parameters = '') {
        if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) {
          return false;
        }
    	if ($image_size = @getimagesize($src)) {
          if ((CONFIG_CALCULATE_IMAGE_SIZE == 'true' && $src != DIR_WS_IMAGES . 'pixel_black.gif' && $src != DIR_WS_IMAGES . 'pixel_trans.gif' && $src != DIR_WS_IMAGES . 'pixel_silver.gif' )) {
    		if ( ($width) || ($height) ) {
    			if ( $width=="100%" ) {
    			  $width = $image_size[0];
    			} elseif ( $height=="100%" ) {
    			  $height = $image_size[1];
    			} elseif ( $width==0 ) {
    			  unset($width);
    			} elseif ( $height==0 ) {
    			  unset($height);
    			}
    			$src=thumbimage(DIR_FS_CATALOG . '/' .$src, $width, $height, 1, 1, DIR_FS_CATALOG . '/' . DIR_WS_IMAGES . 'imagecache');
    			if ((($image_size[1]/$height) > ($image_size[0]/$width) ) && $height>0){
    				 $width=ceil(($image_size[0]/$image_size[1])* $height);
    			} elseif ($width>0) {
    				 $height=ceil($width/($image_size[0]/$image_size[1]));
    			}
    		}
     	  }
          } elseif (IMAGE_REQUIRED == 'false') {
            return '';
          }
    
    // alt is added to the img tag even if it is null to prevent browsers from outputting
    // the image filename as default
        $image = '<img src="' . tep_output_string($src) . '" border="0" alt="' . tep_output_string($alt) . '"';
    
        if (tep_not_null($alt)) {
          $image .= ' title=" ' . tep_output_string($alt) . ' "';
        }
    
            if (tep_not_null($width) && tep_not_null($height)) {
          $image .= ' width="' . tep_output_string($width) . '" height="' . tep_output_string($height) . '"';
        }
    
        if (tep_not_null($parameters)) $image .= ' ' . $parameters;
    
        $image .= '>';
    
        return $image;
      }
    
    ////
    // The HTML form submit button wrapper function
    // Outputs a button in the selected language
      function tep_image_submit($image, $alt = '', $parameters = '') {
        global $language;
    
        $image_submit = '<input type="image" src="' . tep_output_string(DIR_WS_LANGUAGES . $language . '/images/buttons/' . $image) . '" border="0" alt="' . tep_output_string($alt) . '"';
    
        if (tep_not_null($alt)) $image_submit .= ' title=" ' . tep_output_string($alt) . ' "';
    
        if (tep_not_null($parameters)) $image_submit .= ' ' . $parameters;
    
        $image_submit .= '>';
    
        return $image_submit;
      }
    
    ////
    // Output a function button in the selected language
      function tep_image_button($image, $alt = '', $parameters = '') {
        global $language;
    
        return tep_image(DIR_WS_LANGUAGES . $language . '/images/buttons/' . $image, $alt, '', '', $parameters);
      }
    
    ////
    // Output a separator either through whitespace, or with an image
      function tep_draw_separator($image = 'pixel_black.gif', $width = '100%', $height = '1') {
        return tep_image(DIR_WS_IMAGES . $image, '', $width, $height);
      }
    
    ////
    // Output a form
      function tep_draw_form($name, $action, $method = 'post', $parameters = '') {
        $form = '<form name="' . tep_output_string($name) . '" action="' . tep_output_string($action) . '" method="' . tep_output_string($method) . '"';
    
        if (tep_not_null($parameters)) $form .= ' ' . $parameters;
    
        $form .= '>';
    
        return $form;
      }
    
    ////
    // Output a form input field
      function tep_draw_input_field($name, $value = '', $parameters = '', $type = 'text', $reinsert_value = true) {
        $field = '<input type="' . tep_output_string($type) . '" name="' . tep_output_string($name) . '"';
    
        if ( (isset($GLOBALS[$name])) && ($reinsert_value == true) ) {
          $field .= ' value="' . tep_output_string(stripslashes($GLOBALS[$name])) . '"';
        } elseif (tep_not_null($value)) {
          $field .= ' value="' . tep_output_string($value) . '"';
        }
    
        if (tep_not_null($parameters)) $field .= ' ' . $parameters;
    
        $field .= '>';
    
        return $field;
      }
    
    ////
    // Output a form password field
      function tep_draw_password_field($name, $value = '', $parameters = 'maxlength="40"') {
        return tep_draw_input_field($name, $value, $parameters, 'password', false);
      }
    
    ////
    // Output a selection field - alias function for tep_draw_checkbox_field() and tep_draw_radio_field()
      function tep_draw_selection_field($name, $type, $value = '', $checked = false, $parameters = '') {
        $selection = '<input type="' . tep_output_string($type) . '" name="' . tep_output_string($name) . '"';
    
        if (tep_not_null($value)) $selection .= ' value="' . tep_output_string($value) . '"';
    
        if ( ($checked == true) || ( isset($GLOBALS[$name]) && is_string($GLOBALS[$name]) && ( ($GLOBALS[$name] == 'on') || (isset($value) && (stripslashes($GLOBALS[$name]) == $value)) ) ) ) {
          $selection .= ' CHECKED';
        }
    
        if (tep_not_null($parameters)) $selection .= ' ' . $parameters;
    
        $selection .= '>';
    
        return $selection;
      }
    
    ////
    // Output a form checkbox field
      function tep_draw_checkbox_field($name, $value = '', $checked = false, $parameters = '') {
        return tep_draw_selection_field($name, 'checkbox', $value, $checked, $parameters);
      }
    
    ////
    // Output a form radio field
      function tep_draw_radio_field($name, $value = '', $checked = false, $parameters = '') {
        return tep_draw_selection_field($name, 'radio', $value, $checked, $parameters);
      }
    
    ////
    // Output a form textarea field
      function tep_draw_textarea_field($name, $wrap, $width, $height, $text = '', $parameters = '', $reinsert_value = true) {
        $field = '<textarea name="' . tep_output_string($name) . '" wrap="' . tep_output_string($wrap) . '" cols="' . tep_output_string($width) . '" rows="' . tep_output_string($height) . '"';
    
        if (tep_not_null($parameters)) $field .= ' ' . $parameters;
    
        $field .= '>';
    
        if ( (isset($GLOBALS[$name])) && ($reinsert_value == true) ) {
          $field .= tep_output_string_protected(stripslashes($GLOBALS[$name]));
        } elseif (tep_not_null($text)) {
          $field .= tep_output_string_protected($text);
        }
    
        $field .= '</textarea>';
    
        return $field;
      }
    
    ////
    // Output a form hidden field
      function tep_draw_hidden_field($name, $value = '', $parameters = '') {
        $field = '<input type="hidden" name="' . tep_output_string($name) . '"';
    
        if (tep_not_null($value)) {
          $field .= ' value="' . tep_output_string($value) . '"';
        } elseif (isset($GLOBALS[$name])) {
          $field .= ' value="' . tep_output_string(stripslashes($GLOBALS[$name])) . '"';
        }
    
        if (tep_not_null($parameters)) $field .= ' ' . $parameters;
    
        $field .= '>';
    
        return $field;
      }
    
    ////
    // Hide form elements
      function tep_hide_session_id() {
        global $session_started, $SID;
    
        if (($session_started == true) && tep_not_null($SID)) {
          return tep_draw_hidden_field(tep_session_name(), tep_session_id());
        }
      }
    
    ////
    // Output a form pull down menu
      function tep_draw_pull_down_menu($name, $values, $default = '', $parameters = '', $required = false) {
        $field = '<select name="' . tep_output_string($name) . '"';
    
        if (tep_not_null($parameters)) $field .= ' ' . $parameters;
    
        $field .= '>';
    
        if (empty($default) && isset($GLOBALS[$name])) $default = stripslashes($GLOBALS[$name]);
    
        for ($i=0, $n=sizeof($values); $i<$n; $i++) {
          $field .= '<option value="' . tep_output_string($values[$i]['id']) . '"';
          if ($default == $values[$i]['id']) {
            $field .= ' SELECTED';
          }
    
          $field .= '>' . tep_output_string($values[$i]['text'], array('"' => '"', '\'' => ''', '<' => '<', '>' => '>')) . '</option>';
        }
        $field .= '</select>';
    
        if ($required == true) $field .= TEXT_FIELD_REQUIRED;
    
        return $field;
      }
    
    ////
    // Creates a pull-down list of countries
      function tep_get_country_list($name, $selected = '', $parameters = '') {
        $countries_array = array(array('id' => '', 'text' => PULL_DOWN_DEFAULT));
        $countries = tep_get_countries();
    
        for ($i=0, $n=sizeof($countries); $i<$n; $i++) {
          $countries_array[] = array('id' => $countries[$i]['countries_id'], 'text' => $countries[$i]['countries_name']);
        }
    
        return tep_draw_pull_down_menu($name, $countries_array, $selected, $parameters);
      }
      function thumbimage ($image, $x, $y, $aspectratio, $resize, $cachedir){
    
              /*##############################################
    	      #          - Thumbnail-Script v1.3 -           #
    	      # Generating thumbnails 'on-the-fly' with PHP  #
    	      #                                              #
    	      #  (c) by Christian Lamine, FlashDreams OHG    #
    	      #          http://www.flashdreams.de/          #
    	      #                                              #
    	      #       Modified by http://www.tse.at          #
    	      #       Modified by lars@iwer.de               #
    	      #                                              #
    	      # This script may be freely used, distributed  #
    	      # and modified without any charge as long as   #
    	      # this copyright information is included.      #
    	      #                                              #
    	      # Any commercial selling of this script is     #
    	      # forbidden.                                   #
    	      #                                              #
    	      # The author is not responsible for possible   #
    	      # damage which may result from the application #
    	      # of this script, neither direct nor indirect. #
    	      # Use at your own risk!                        #
        	  ##############################################*/
    
         error_reporting(0);
    
         $types = array (1 => "gif", "jpeg", "png", "swf", "psd", "wbmp");
    	 $not_supported_formats = array ("GIF"); // Write in capital Letters!!
         umask(0);
         !is_dir ($cachedir)
             ? mkdir ($cachedir, 0777)
             : system ("chmod 0777 ".$cachedir);
    
           (!isset ($x) || ereg ('^[0-9]{1,}$', $x, $regs)) &&
           (!isset ($y) || ereg ('^[0-9]{1,}$', $y, $regs)) &&
           (isset ($x) || isset ($y))
                ? true
              : DIE ('Fehlende(r) oder ungültige(r) Größenparameter!');
    
         !isset ($resize) || !ereg ('^[0|1]$', $resize, $regs)
              ? $resize = 0
              : $resize;
    
         !isset ($aspectratio) || !ereg ('^[0|1]$', $aspectratio, $regs)
              ? isset ($x) && isset ($y)
                     ? $aspectratio = 1
                     : $aspectratio = 0
              : $aspectratio;
    
         !isset ($image)
              ? DIE ('Es wurde kein Bild angegeben!')
              : !file_exists($image)
                   ? DIE ('Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
                   : false;
    
         $imagedata = getimagesize($image);
    
         !$imagedata[2] || $imagedata[2] == 4 || $imagedata[2] == 5
              ? DIE ('Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
              : false;
    
    	 $imgtype="!(ImageTypes() & IMG_" . strtoupper($types[$imagedata[2]]) . ")";
         if ((eval($imgtype)) || (in_array(strtoupper(array_pop(explode('.', basename($image)))),$not_supported_formats))) {
         	$image = substr ($image, (strrpos (DIR_FS_CATALOG . '/', '/'))+1);
    	 	return $image;
    
         }
    
         if (!isset ($x)) $x = floor ($y * $imagedata[0] / $imagedata[1]);
    
    
         if (!isset ($y)) $y = floor ($x * $imagedata[1] / $imagedata[0]);
    
         if ($aspectratio && isset ($x) && isset ($y)) {
    		if ((($imagedata[1]/$y) > ($imagedata[0]/$x) )){
    			 $x=ceil(($imagedata[0]/$imagedata[1])* $y);
    		} else {
    			 $y=ceil($x/($imagedata[0]/$imagedata[1]));
    		}
         }
         $thumbfile =  '/' . basename($image);
         if (file_exists ($cachedir.$thumbfile)) {
              $thumbdata = getimagesize ($cachedir.$thumbfile);
              $thumbdata[0] == $x && $thumbdata[1] == $y
                   ? $iscached = true
                   : $iscached = false;
    			if (@filemtime($cachedir.$thumbfile) < @filemtime($image))   
    			   $iscached = false;
         } else {
              $iscached = false;
         }
    
         if (!$iscached) {
              ($imagedata[0] > $x || $imagedata[1] > $y) || (($imagedata[0] < $x || $imagedata[1] < $y) && $resize)
                   ? $makethumb = true
                   : $makethumb = false;
         } else {
              $makethumb = false;
         }
    
    
    
         if ($makethumb) {
              $image = call_user_func("imagecreatefrom".$types[$imagedata[2]], $image);
    	  if (function_exists("imagecreatetruecolor") && ($thumb = imagecreatetruecolor ($x, $y))) {
    		imagecopyresampled ($thumb, $image, 0, 0, 0, 0, $x, $y, $imagedata[0], $imagedata[1]);
    	  } else {
    		$thumb = imagecreate ($x, $y);
    		imagecopyresized ($thumb, $image, 0, 0, 0, 0, $x, $y, $imagedata[0], $imagedata[1]);
    	  }
              call_user_func("image".$types[$imagedata[2]], $thumb, $cachedir.$thumbfile);
              imagedestroy ($image);
              imagedestroy ($thumb);
              $image = DIR_WS_IMAGES . 'imagecache' . $thumbfile;
         } else {
              $iscached
                   ? $image = DIR_WS_IMAGES . 'imagecache' . $thumbfile
                   : $image = substr ($image, (strrpos (DIR_FS_CATALOG . '/', '/'))+1);
         }
    return $image;
    
    }
    ?>
    [/code]

  2. #12
    jpf
    jpf is offline
    osCMax Testing Team
    jpf's Avatar
    Join Date
    Sep 2003
    Location
    Manitoba, Canada
    Posts
    2,699
    Rep Power
    22


    Default

    I sorry but that breaks the "Ultimate SEO URLs" and there is another error further down the form where you got:
    Code:
    '''
    and should be:
    Code:
    '& #039;'
    (Without the space) But I think that is being stripped out by the HTML display.

    Better instructions are:

    Find (starting at about line 250):
    Code:
    // The HTML image wrapper function
      function tep_image($src, $alt = '', $width = '', $height = '', $parameters = '') {
        if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) {
          return false;
        }
    
    // alt is added to the img tag even if it is null to prevent browsers from outputting
    // the image filename as default
        $image = '<img src="' . tep_output_string($src) . '" border="0" alt="' . tep_output_string($alt) . '"';
    
        if (tep_not_null($alt)) {
          $image .= ' title=" ' . tep_output_string($alt) . ' "';
        }
    
        if ( (CONFIG_CALCULATE_IMAGE_SIZE == 'true') && (empty($width) || empty($height)) ) {
          if ($image_size = @getimagesize($src)) {
            if (empty($width) && tep_not_null($height)) {
              $ratio = $height / $image_size[1];
              $width = $image_size[0] * $ratio;
            } elseif (tep_not_null($width) && empty($height)) {
              $ratio = $width / $image_size[0];
              $height = $image_size[1] * $ratio;
            } elseif (empty($width) && empty($height)) {
              $width = $image_size[0];
              $height = $image_size[1];
            }
          } elseif (IMAGE_REQUIRED == 'false') {
            return false;
          }
        }
    
        if (tep_not_null($width) && tep_not_null($height)) {
          $image .= ' width="' . tep_output_string($width) . '" height="' . tep_output_string($height) . '"';
        }
    
        if (tep_not_null($parameters)) $image .= ' ' . $parameters;
    
        $image .= '>';
    
        return $image;
      }
    And replace it with:
    Code:
    // The HTML image wrapper function
      function tep_image($src, $alt = '', $width = '', $height = '', $parameters = '') {
        if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) {
          return false;
        }
        if ($image_size = @getimagesize($src)) {
          if ((CONFIG_CALCULATE_IMAGE_SIZE == 'true' && $src != DIR_WS_IMAGES . 'pixel_black.gif' && $src != DIR_WS_IMAGES . 'pixel_trans.gif' && $src != DIR_WS_IMAGES . 'pixel_silver.gif' )) {
            if ( ($width) || ($height) ) {
              if ( $width=="100%" ) {
                $width = $image_size[0];
              } elseif ( $height=="100%" ) {
                $height = $image_size[1];
              } elseif ( $width==0 ) {
                unset($width);
              } elseif ( $height==0 ) {
                unset($height);
              }
              $src=thumbimage(DIR_FS_CATALOG . '/' .$src, $width, $height, 1, 1, DIR_FS_CATALOG . '/' . DIR_WS_IMAGES . 'imagecache');
              if ((($image_size[1]/$height) > ($image_size[0]/$width) ) && $height>0){
                  $width=ceil(($image_size[0]/$image_size[1])* $height);
              } elseif ($width>0) {
                  $height=ceil($width/($image_size[0]/$image_size[1]));
              }
            }
          }
        } elseif (IMAGE_REQUIRED == 'false') {
          return '';
        }
    
    // alt is added to the img tag even if it is null to prevent browsers from outputting
    // the image filename as default
        $image = '<img src="' . tep_output_string($src) . '" border="0" alt="' . tep_output_string($alt) . '"';
    
        if (tep_not_null($alt)) {
          $image .= ' title=" ' . tep_output_string($alt) . ' "';
        }
    
    
        if (tep_not_null($width) && tep_not_null($height)) {
          $image .= ' width="' . tep_output_string($width) . '" height="' . tep_output_string($height) . '"';
        }
    
        if (tep_not_null($parameters)) $image .= ' ' . $parameters;
    
        $image .= '>';
    
        return $image;
      }
    And to the BOTTOM of the file - before the last ?>
    Add:
    Code:
      function thumbimage ($image, $x, $y, $aspectratio, $resize, $cachedir){
    
              /*##############################################
             #          - Thumbnail-Script v1.3 -           #
             # Generating thumbnails 'on-the-fly' with PHP  #
             #                                              #
             #  (c) by Christian Lamine, FlashDreams OHG    #
             #          http://www.flashdreams.de/          #
             #                                              #
             #       Modified by http://www.tse.at          #
             #       Modified by lars@iwer.de               #
             #                                              #
             # This script may be freely used, distributed  #
             # and modified without any charge as long as   #
             # this copyright information is included.      #
             #                                              #
             # Any commercial selling of this script is     #
             # forbidden.                                   #
             #                                              #
             # The author is not responsible for possible   #
             # damage which may result from the application #
             # of this script, neither direct nor indirect. #
             # Use at your own risk!                        #
             ##############################################*/
    
         error_reporting(0);
    
         $types = array (1 => "gif", "jpeg", "png", "swf", "psd", "wbmp");
        $not_supported_formats = array ("GIF"); // Write in capital Letters!!
         umask(0);
         !is_dir ($cachedir)
             ? mkdir ($cachedir, 0777)
             : system ("chmod 0777 ".$cachedir);
    
           (!isset ($x) || ereg ('^[0-9]{1,}$', $x, $regs)) &&
           (!isset ($y) || ereg ('^[0-9]{1,}$', $y, $regs)) &&
           (isset ($x) || isset ($y))
                ? true
              : DIE ('Fehlende(r) oder ungültige(r) Größenparameter!');
    
         !isset ($resize) || !ereg ('^[0|1]$', $resize, $regs)
              ? $resize = 0
              : $resize;
    
         !isset ($aspectratio) || !ereg ('^[0|1]$', $aspectratio, $regs)
              ? isset ($x) && isset ($y)
                     ? $aspectratio = 1
                     : $aspectratio = 0
              : $aspectratio;
    
         !isset ($image)
              ? DIE ('Es wurde kein Bild angegeben!')
              : !file_exists($image)
                   ? DIE ('Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
                   : false;
    
         $imagedata = getimagesize($image);
    
         !$imagedata[2] || $imagedata[2] == 4 || $imagedata[2] == 5
              ? DIE ('Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
              : false;
    
        $imgtype="!(ImageTypes() & IMG_" . strtoupper($types[$imagedata[2]]) . ")";
         if ((eval($imgtype)) || (in_array(strtoupper(array_pop(explode('.', basename($image)))),$not_supported_formats))) {
            $image = substr ($image, (strrpos (DIR_FS_CATALOG . '/', '/'))+1);
           return $image;
    
         }
    
         if (!isset ($x)) $x = floor ($y * $imagedata[0] / $imagedata[1]);
    
    
         if (!isset ($y)) $y = floor ($x * $imagedata[1] / $imagedata[0]);
    
         if ($aspectratio && isset ($x) && isset ($y)) {
          if ((($imagedata[1]/$y) > ($imagedata[0]/$x) )){
              $x=ceil(($imagedata[0]/$imagedata[1])* $y);
          } else {
              $y=ceil($x/($imagedata[0]/$imagedata[1]));
          }
         }
         $thumbfile =  '/' . basename($image);
         if (file_exists ($cachedir.$thumbfile)) {
              $thumbdata = getimagesize ($cachedir.$thumbfile);
              $thumbdata[0] == $x && $thumbdata[1] == $y
                   ? $iscached = true
                   : $iscached = false;
             if (@filemtime($cachedir.$thumbfile) < @filemtime($image))   
                $iscached = false;
         } else {
              $iscached = false;
         }
    
         if (!$iscached) {
              ($imagedata[0] > $x || $imagedata[1] > $y) || (($imagedata[0] < $x || $imagedata[1] < $y) && $resize)
                   ? $makethumb = true
                   : $makethumb = false;
         } else {
              $makethumb = false;
         }
    
    
    
         if ($makethumb) {
              $image = call_user_func("imagecreatefrom".$types[$imagedata[2]], $image);
         if (function_exists("imagecreatetruecolor") && ($thumb = imagecreatetruecolor ($x, $y))) {
          imagecopyresampled ($thumb, $image, 0, 0, 0, 0, $x, $y, $imagedata[0], $imagedata[1]);
         } else {
          $thumb = imagecreate ($x, $y);
          imagecopyresized ($thumb, $image, 0, 0, 0, 0, $x, $y, $imagedata[0], $imagedata[1]);
         }
              call_user_func("image".$types[$imagedata[2]], $thumb, $cachedir.$thumbfile);
              imagedestroy ($image);
              imagedestroy ($thumb);
              $image = DIR_WS_IMAGES . 'imagecache' . $thumbfile;
         } else {
              $iscached
                   ? $image = DIR_WS_IMAGES . 'imagecache' . $thumbfile
                   : $image = substr ($image, (strrpos (DIR_FS_CATALOG . '/', '/'))+1);
         }
    return $image;
    
    }

  3. #13
    jpf
    jpf is offline
    osCMax Testing Team
    jpf's Avatar
    Join Date
    Sep 2003
    Location
    Manitoba, Canada
    Posts
    2,699
    Rep Power
    22


    Default

    Just to note: This will cause on sites with heavy traffic ALOT of CPU cycles to be used and may slow down the webpages for your site and OTHER sites on the same server. You could get a warning or shut down if the HOSTING company deams it against there policy or may force you to upgrade to a dedicated server.


    Also Translation:

    : DIE ('Fehlende(r) oder ungültige(r) Größenparameter!');
    : DIE ('ERROR: Missing or invalid size parameter(s)!');

    ? DIE ('Es wurde kein Bild angegeben!')
    ? DIE ('ERROR: Link to picture was not supplied!')

    ? DIE ('Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
    ? DIE ('ERROR: The file could not be found on the server!')

    ? DIE ('Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
    ? DIE ('ERROR: The file it does not contain a picture!')


    OR:
    in each language file (ie: catalog/includes/languages/english.php) add to the bottom if the file - before the last ?>

    //BOF: MOD - Thumbnail-Script v1.3
    define('THUMBNAIL_INVALID', 'ERROR: Missing or invalid size parameter(s)!');
    define('THUMBNAIL_NOLINK', 'ERROR: Link to picture was not supplied!');
    define('THUMBNAIL_NOFILE', 'ERROR: The file could not be found on the server!');
    define('THUMBNAIL_NOPICTURE', 'ERROR: The file it does not contain a picture!');
    //EOF: MOD - Thumbnail-Script v1.3

    German:
    //BOF: MOD - Thumbnail-Script v1.3
    define('THUMBNAIL_INVALID', 'Fehlende(r) oder ungültige(r) Größenparameter!');
    define('THUMBNAIL_NOLINK', 'Es wurde kein Bild angegeben!')
    define('THUMBNAIL_NOFILE', 'Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
    define('THUMBNAIL_NOPICTURE', 'Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
    //EOF: MOD - Thumbnail-Script v1.3


    In html_output.php change:
    : DIE ('Fehlende(r) oder ungültige(r) Größenparameter!');
    to
    : DIE (THUMBNAIL_INVALID);

    ? DIE ('Es wurde kein Bild angegeben!')
    to
    ? DIE (THUMBNAIL_NOLINK)

    ? DIE ('Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
    to
    ? DIE (THUMBNAIL_NOFILE)

    ? DIE ('Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
    to
    ? DIE (THUMBNAIL_NOPICTURE)

    Good Luck!

Page 2 of 2 FirstFirst 12

Similar Threads

  1. Dynamic MoPics Question: Main Thumbnail in Thumbnail Img Dir
    By groggory in forum osCMax v2 Features Discussion
    Replies: 3
    Last Post: 01-30-2006, 09:50 AM
  2. Dynamic Images / Auto Thumbnailer / Zoom Image Module?
    By cTak in forum osCmax v2 Customization/Mods
    Replies: 2
    Last Post: 01-16-2006, 10:56 AM
  3. [HOW TO] Dynamic Mo-Pics v2.2
    By michael_s in forum osCmax v1.7 Discussion
    Replies: 54
    Last Post: 02-23-2005, 11:25 AM
  4. Remove Dynamic Mo Pics
    By Anonymous in forum osCmax v1.7 Discussion
    Replies: 7
    Last Post: 11-07-2004, 10:06 AM
  5. Dynamic Mo Pics
    By Dave_Heath in forum osCommerce 2.2 Modification Help
    Replies: 1
    Last Post: 10-24-2004, 03:32 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •