Jump to content
FWR Media

KissIT Image Thumnailer

Recommended Posts

@@Rainer

Just updated my github collab with your changes.

Do you mind checking it out before I push the changes to the master?

https://github.com/newburns/osCommerce-234-bootstrap-wADDONS/tree/KISSit-R11

Hello Ray @@newburns,

 

I had a look on the files and it seems all ok. Remember only that the modifications in product_info.php will limit the big image size in the pop up to the size defined for KissIT Product Main Image Width and Height. So it may not be suitable for all stores.

 

Thank you and kind regards

Rainer

Share this post


Link to post
Share on other sites

Thank you very much for this addon and supporting it!  I have to say, that was about the easiest install ever!

 

Everything seems to be working well except transparency.  I see that there is code for it in image.php but for some reason the transparent space in my PNGs are being filled with the RGB value in 'thumb_background_rgb'.  Is there something I need to do differently than the stock install to maintain transparency?  Does the original image need to be of a certain specification?  My PNGs were generated from BMPs in GIMP2.8 by setting the background color (white) to transparent via Layer->Transparency->Color to Alpha.

 

My store was originally a 2.3.1 and has been upgraded to 2.3.4.  I'm running PHP 5.2.17.  I installed the version found here... version R11 (http://addons.oscommerce.com/info/9206) using instructions found in osc_standard_installation.docx.  BTW, the legacy tep_image() maintained the transparency.  Any help would be appreciated.  Thank you :-)

Edited by ndiggity

Share this post


Link to post
Share on other sites

Thank you very much for this addon and supporting it!  I have to say, that was about the easiest install ever!

 

Everything seems to be working well except transparency.  I see that there is code for it in image.php but for some reason the transparent space in my PNGs are being filled with the RGB value in 'thumb_background_rgb'.  Is there something I need to do differently than the stock install to maintain transparency?  Does the original image need to be of a certain specification?  My PNGs were generated from BMPs in GIMP2.8 by setting the background color (white) to transparent via Layer->Transparency->Color to Alpha.

 

My store was originally a 2.3.1 and has been upgraded to 2.3.4.  I'm running PHP 5.2.17.  I installed the version found here... version R11 (http://addons.oscommerce.com/info/9206) using instructions found in osc_standard_installation.docx.  BTW, the legacy tep_image() maintained the transparency.  Any help would be appreciated.  Thank you :-)

 

Hello @@ndiggity,

 

Thank you, all goes to the original author FWR Media.

I have to say that I took the add-on and thread over with the r10+11 update which is only related to bootstrap suppport and the new limit upsize feature I added.

I found a post in this thread from the original author saying:

 

 Posted by FWR Media on 23 July 2012 - 14:23 in Templates and Images

 

There is no support for transparencies as most usage is for non transparent.

 

Sorry and kind regards

Rainer

Share this post


Link to post
Share on other sites

Hi there

just wondered if your adjustments to the addon also make the thumbnails image responsive.

Warm regards

Doug

Hello Doug @@douglaswalker,

 

My modifications have no influence on that.

I believe image responsiveness in the sense of auto thumbnail resizing depends for the KissIT thumbnail script on the css framework.

KissIt Thumbnails are responsive with OsC2.3.4 bootstrap.

For standard OsC versions it will be much easier to achieve with OPI image thumbnailer. It does not need fixed-numeric image size and you can auto resize the thumbnails just setting image width and height to "auto", or using css:

img {
        max-width: 100%;
        height: auto; 
        width: auto\9; /* ie8 */
}

Kind regards

Rainer

Edited by raiwa

Share this post


Link to post
Share on other sites

just tryed to put the latest version on my site but i am getting a error in the html_output file

PHP Parse error:  syntax error, unexpected T_VARIABLE in includes/functions/html_output.php on line 29

here is my file,  can any one see the error?

<?php
/*
  $Id$

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2010 osCommerce

  Released under the GNU General Public License
*/

////
// Ultimate SEO URLs v2.2d
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
   global $seo_urls;                
   if ( !is_object($seo_urls) ){
    if ( !class_exists('SEO_URL') ){
     include_once(DIR_WS_CLASSES . 'seo.class.php');
    }
    global $languages_id;
    $seo_urls = new SEO_URL($languages_id);
   }
   return $seo_urls->href_link($page, $parameters, $connection, $add_session_id);
 }

// New HTML image wrapper function modified for KISS Image Thumbnailer by FWR Media
  function tep_image($src, $alt = '', $width = '', $height = '', $parameters = '') {
    // If width and height are not numeric then we can't do anything with it
    if ( !is_numeric ( $width ) || !is_numeric ( $height ) ) return tep_image_legacy( $src, $alt, $width, $height, $parameters ) ;
  require_once DIR_WS_MODULES . 'kiss_image_thumbnailer/classes/Image_Helper.php';
    $attributes = array( 'alt' => $alt, 'width' => $width, 'height' => $height );
    $image = new Image_Helper( array( 'src'                   => $src,
                                      'attributes'            => $attributes,
                                      'parameters'            => $parameters,
                                      'default_missing_image' => DIR_WS_IMAGES . 'no_image_available_150_150.gif',
                                      'isXhtml'               => true,
                                      'thumbs_dir_path'       => DIR_WS_MODULES . 'kiss_image_thumbnailer/thumbs/',
                                      'thumb_quality'         => 75,
                                      'thumb_background_rgb' => array( 'red'   => 255,
                                                                       'green' => 255,
                                                                       'blue'  => 255 ) ) );
    if ( false === $image_assembled = $image->assemble() ) {
      return tep_image_legacy( $src, $alt, $width, $height, $parameters );
    }
    return $image_assembled;
  } // end function
////
// The HTML image wrapper function
  function tep_image_legacy($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) . '" 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 = intval($image_size[0] * $ratio);
        } elseif (tep_not_null($width) && empty($height)) {
          $ratio = $width / $image_size[0];
          $height = intval($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;
  }

////
// 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) . '" 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 = '', $tokenize = false) {
    global $sessiontoken;

    $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 .= '>';

    if ( ($tokenize == true) && isset($sessiontoken) ) {
      $form .= '<input type="hidden" name="formid" value="' . tep_output_string($sessiontoken) . '" />';
    }

    return $form;
  }

////
// Output a form input field
  function tep_draw_input_field($name, $value = '', $parameters = '', $type = 'text', $reinsert_value = true) {
    global $HTTP_GET_VARS, $HTTP_POST_VARS;

    $field = '<input type="' . tep_output_string($type) . '" name="' . tep_output_string($name) . '"';

    if ( ($reinsert_value == true) && ( (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) || (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) ) ) {
      if (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) {
        $value = stripslashes($HTTP_GET_VARS[$name]);
      } elseif (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) {
        $value = stripslashes($HTTP_POST_VARS[$name]);
      }
    }

    if (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 = '') {
    global $HTTP_GET_VARS, $HTTP_POST_VARS;

    $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($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name]) && (($HTTP_GET_VARS[$name] == 'on') || (stripslashes($HTTP_GET_VARS[$name]) == $value))) || (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name]) && (($HTTP_POST_VARS[$name] == 'on') || (stripslashes($HTTP_POST_VARS[$name]) == $value))) ) {
      $selection .= ' checked="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
// The $wrap parameter is no longer used in the core xhtml template
  function tep_draw_textarea_field($name, $wrap, $width, $height, $text = '', $parameters = '', $reinsert_value = true) {
    global $HTTP_GET_VARS, $HTTP_POST_VARS;

    $field = '<textarea name="' . tep_output_string($name) . '" cols="' . tep_output_string($width) . '" rows="' . tep_output_string($height) . '"';

    if (tep_not_null($parameters)) $field .= ' ' . $parameters;

    $field .= '>';

    if ( ($reinsert_value == true) && ( (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) || (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) ) ) {
      if (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) {
        $field .= tep_output_string_protected(stripslashes($HTTP_GET_VARS[$name]));
      } elseif (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) {
        $field .= tep_output_string_protected(stripslashes($HTTP_POST_VARS[$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 = '') {
    global $HTTP_GET_VARS, $HTTP_POST_VARS;

    $field = '<input type="hidden" name="' . tep_output_string($name) . '"';

    if (tep_not_null($value)) {
      $field .= ' value="' . tep_output_string($value) . '"';
    } elseif ( (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) || (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) ) {
      if ( (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) ) {
        $field .= ' value="' . tep_output_string(stripslashes($HTTP_GET_VARS[$name])) . '"';
      } elseif ( (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) ) {
        $field .= ' value="' . tep_output_string(stripslashes($HTTP_POST_VARS[$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) {
    global $HTTP_GET_VARS, $HTTP_POST_VARS;

    $field = '<select name="' . tep_output_string($name) . '"';

    if (tep_not_null($parameters)) $field .= ' ' . $parameters;

    $field .= '>';

    if (empty($default) && ( (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) || (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) ) ) {
      if (isset($HTTP_GET_VARS[$name]) && is_string($HTTP_GET_VARS[$name])) {
        $default = stripslashes($HTTP_GET_VARS[$name]);
      } elseif (isset($HTTP_POST_VARS[$name]) && is_string($HTTP_POST_VARS[$name])) {
        $default = stripslashes($HTTP_POST_VARS[$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="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);
  }

////
// Output a jQuery UI Button
  function tep_draw_button($title = null, $icon = null, $link = null, $priority = null, $params = null) {
    static $button_counter = 1;

    $types = array('submit', 'button', 'reset');

    if ( !isset($params['type']) ) {
      $params['type'] = 'submit';
    }

    if ( !in_array($params['type'], $types) ) {
      $params['type'] = 'submit';
    }

    if ( ($params['type'] == 'submit') && isset($link) ) {
      $params['type'] = 'button';
    }

    if (!isset($priority)) {
      $priority = 'secondary';
    }

    $button = '<span class="tdbLink">';

    if ( ($params['type'] == 'button') && isset($link) ) {
      $button .= '<a id="tdb' . $button_counter . '" href="' . $link . '"';

      if ( isset($params['newwindow']) ) {
        $button .= ' target="_blank"';
      }
    } else {
      $button .= '<button id="tdb' . $button_counter . '" type="' . tep_output_string($params['type']) . '"';
    }

    if ( isset($params['params']) ) {
      $button .= ' ' . $params['params'];
    }

    $button .= '>' . $title;

    if ( ($params['type'] == 'button') && isset($link) ) {
      $button .= '</a>';
    } else {
      $button .= '</button>';
    }

    $button .= '</span><script type="text/javascript">$("#tdb' . $button_counter . '").button(';

    $args = array();

    if ( isset($icon) ) {
      if ( !isset($params['iconpos']) ) {
        $params['iconpos'] = 'left';
      }

      if ( $params['iconpos'] == 'left' ) {
        $args[] = 'icons:{primary:"ui-icon-' . $icon . '"}';
      } else {
        $args[] = 'icons:{secondary:"ui-icon-' . $icon . '"}';
      }
    }

    if (empty($title)) {
      $args[] = 'text:false';
    }

    if (!empty($args)) {
      $button .= '{' . implode(',', $args) . '}';
    }

    $button .= ').addClass("ui-priority-' . $priority . '").parent().removeClass("tdbLink");</script>';

    $button_counter++;

    return $button;
  }


////
// Output a form radio menu for product info page maniac101
  function tep_draw_radio_menu($name, $values, $default = '', $parameters = '', $required = false) {
	$field ='<table border="0" cellspacing="0" cellpadding="0"><tr><td class="main">';   
	if (empty($default) && isset($GLOBALS[$name])) $default = stripslashes($GLOBALS[$name]);

    for ($i=0, $n=sizeof($values); $i<$n; $i++) {
	  $value = tep_output_string($values[$i]['id']);
      $field .= '<input type="radio" name="' . $name . '" value="' . $value . '"';
        if ($i == 0) $field .= ' checked';

      $field .= '>' . tep_output_string($values[$i]['text'], array('"' => '"', '\'' => ''', '<' => '<', '>' => '>')) . '<br />';
    }
    $field .= '</td></tr></table>';

    if ($required == true) $field .= TEXT_FIELD_REQUIRED;

    return $field;
  }

////

////
// Creates a pull-down list for dates	
  function tep_draw_pull_down_date($name='date', $day='', $month='', $year='', $full=false, $mnth=false, $starty=''){
    if ($day=='') $day= '0' ;
    if ($month=='') $month = '0';
    if ($year=='') $year= '0';
    
    $endy=date('Y')-8;
    if ($starty=='') {
      $starty=date('Y')-1;$endy=date('Y')+2;
    } 
    $named = $name . 'd';
    $namem = $name . 'm';
    $namey = $name . 'Y';
	
// Array for days
    $defaultday[0] = array('id' => '0',
			  'text' => TEXT_DATE_DAY);        	    
    
    for($i=1; $i<=31; $i++) {
      if(strlen($i)!= 2) {
        $j = '0' . $i;
      } else {
        $j = $i;
      } 

      $days[] = array('id' => $j, 'text' => $j);
    }
    if ( $day == '0' ) 
      $days = array_merge($defaultday, $days);

// Array for months
    $defaultmonth[0] = array('id' => '0',
			  'text' => TEXT_DATE_MONTH);        	    
    if ($mnth) {
      $months = array(array('id' => '01', 'text' => TEXT_DATE_JAN),
      	              array('id' => '02', 'text' => TEXT_DATE_FEB),
      	              array('id' => '03', 'text' => TEXT_DATE_MAR),
      	              array('id' => '04', 'text' => TEXT_DATE_APR),
      	              array('id' => '05', 'text' => TEXT_DATE_MAY),
      	              array('id' => '06', 'text' => TEXT_DATE_JUN),
      	              array('id' => '07', 'text' => TEXT_DATE_JUL),
      	              array('id' => '08', 'text' => TEXT_DATE_AUG),
      	              array('id' => '09', 'text' => TEXT_DATE_SEP),
      	              array('id' => '10', 'text' => TEXT_DATE_OCT),
      	              array('id' => '11', 'text' => TEXT_DATE_NOV),
      	              array('id' => '12', 'text' => TEXT_DATE_DEC));
    } else {
      for($i=1; $i<=12; $i++) {
        if(strlen($i)!= 2){
          $j = '0' . $i;
        } else {
          $j = $i;
        } 
        $months[] = array('id' => $j, 'text' => $j);
      }
    }
    if ( $month == '0' ) 
      $months = array_merge($defaultmonth, $months);

// Array for years
    $defaultyear[0] = array('id' => '0',
			  'text' => TEXT_DATE_YEAR);
    
    for($i=$starty; $i<=$endy; $i++) {
      $j = $i;
      if ($full) {
        $y = $i - 2000;
        if(strlen($y)!= 2) {
          $j = '0' . $y;
        } else {
          $j = $y;
        }
      }
      $years[] = array('id' => $i, 'text' => $j);
    }
    
    if ( $year == '0' ) 
      $years = array_merge($defaultyear, $years);
    
    $field='';

    switch (DATE_FORMAT) {
      case 'd/m/Y':
        $field .= tep_draw_pull_down_menu($named, $days, $day);
        $field .= tep_draw_pull_down_menu($namem, $months, $month);
        $field .= tep_draw_pull_down_menu($namey, $years, $year);
        break;
      case 'm/d/Y':
        $field .= tep_draw_pull_down_menu($named, $months, $month);
        $field .= tep_draw_pull_down_menu($namem, $days, $day);
        $field .= tep_draw_pull_down_menu($namey, $years, $year);
        break;
      case 'Y/m/d':
        $field .= tep_draw_pull_down_menu($named, $years, $year);
        $field .= tep_draw_pull_down_menu($namem, $months, $month);
        $field .= tep_draw_pull_down_menu($namey, $days, $day);
        break;
      default:
        $field .= tep_draw_pull_down_menu($named, $days, $day);
        $field .= tep_draw_pull_down_menu($namem, $months, $month);
        $field .= tep_draw_pull_down_menu($namey, $years, $year);
        break;
    }

    return $field ;
  }

////
?>

thanks,

Share this post


Link to post
Share on other sites

Hello Robert @@kudos,

 

Your tep_image function is ok. It seems a parameter passed to the function is invalid.You may have an error in the page where the function is called (if it happens only on one page) or, if it happens on several pages, you may have an non numeric value in the image sizes defined in Admin : Configuration : images.

Remember you need to use a numeric value for image width and image height.

Share this post


Link to post
Share on other sites

Hi

thanks for the reply

happens on any page i try to go to, i tried main page, product_info etc , same error

 

i checked the admin, it does have the defaults in there...

450

600

 

maybe its in a whats new scroll box

ill have a poke around later on see if i can find the problem at least you have me some ideas where to check with a function call.

Share this post


Link to post
Share on other sites

i got this to work in the end....

 

i found a older html_output.php file, took the code from that (copy, paste over my backup file) made any mods

and then it all worked, but i cant see what is different only that maybe copying it from the word doc files it has some odd hidden formatting in place?

 

as i had the same issue with the

2334standard_product_info.php

 

line 122 , Syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';'

<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) '', 'NONSSL', false) . '" target="_blank" rel="fancybox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), KISSIT_MAIN_PRODUCT_IMAGE_WIDTH, KISSIT_MAIN_PRODUCT_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '</a>'; ?>
  

but i could not see the error.. took the same line from a different file, and put the kissit mods into the line and all worked

i dont know if its files i have or it is in the release version might be worth a check. thought id give a heads up what my problem was tho might help

Share this post


Link to post
Share on other sites

Just checking my webmaster tools on google and noticed something new. The Blocked Resources link. Sooooo, I clicked on it and I have 7,724 blocked resources and it looks like so far google wants to see my  /includes/modules/kiss_image_thumbnailer/thumbs/ folder to pull out all those little images.

 

Is there a way to allow that particular folder only or do I have to move it and recode to send the images to their new spot?

 

Here's a link to the info on google. https://support.google.com/webmasters/answer/6153277

 

I do have my includes folder blocked in robots.txt

 

Thanks in advance for your assistance. 

Edited by queenzukie

Share this post


Link to post
Share on other sites

Just checking my webmaster tools on google and noticed something new. The Blocked Resources link. Sooooo, I clicked on it and I have 7,724 blocked resources and it looks like so far google wants to see my  /includes/modules/kiss_image_thumbnailer/thumbs/ folder to pull out all those little images.

 

Is there a way to allow that particular folder only or do I have to move it and recode to send the images to their new spot?

 

Here's a link to the info on google. https://support.google.com/webmasters/answer/6153277

 

I do have my includes folder blocked in robots.txt

 

Thanks in advance for your assistance. 

 

Hello Rachael @,

 

I believe the best then is to move your thumbnail folder into the images folder and correct the path in the tep_image function in includes/functions/html_output.php:

                                      'thumbs_dir_path'       => DIR_WS_MODULES . 'kiss_image_thumbnailer/thumbs/',

Could be:

                                      'thumbs_dir_path'       => DIR_WS_IMAGES . 'thumbs/',

regards

Rainer

Share this post


Link to post
Share on other sites

@@raiwa 

 

I tried this and it is not working for some reason. I moved the thumbs folder to the root. I have way too many images in my images folder to put another folder in there. I changed includes/functions/html_output.php to this:

'thumbs_dir_path'       => DIR_WS_HTTP_CATALOG . 'thumbs/',

The thumbnail url is on the site but no image is showing up. I've set the permissions to 755 (and even tried 777) and can't seem to get the images to show, just a placeholder. It appears as though the image is not being generated and saved into the thumbs folder. 

 

Can you help? Am I missing something?

Share this post


Link to post
Share on other sites

Hello Rachael @,

 

no need for DIR_WS_HTTP_CATALOG, It should be:

'thumbs_dir_path'       => 'thumbs/',

if it is in the root directory.

We are already in the root directory:-)

Edited by raiwa

Share this post


Link to post
Share on other sites

Ha! Duh! Thanks! Rookie mistake (even though I've been working with this for 5 years now!) Working like a charm. 

 

You're the best!

Share this post


Link to post
Share on other sites

More questions. 

 

I have the morepics addon installed. I need to add the Image Thumbnailer to the main image on the product info. Current code controlling this is:

<script language="javascript"><!--
document.write('<?php
			echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), (MOPICS_RESTRICT_PARENT=='false'?'':0), (MOPICS_RESTRICT_PARENT=='true'?'':250), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>';
			?>');
//--></script>

I've tried changing it to this:

<script language="javascript"><!--
document.write('<?php
			echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), KISSIT_MAIN_PRODUCT_IMAGE_WIDTH, KISSIT_MAIN_PRODUCT_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>';
			?>');
//--></script>

And it does not work. (It shows the image in the uploaded size rather than thumbnailing it. 

 

How would I get it to actually resize the main image and save that resized image to the thumbs folder?

Share this post


Link to post
Share on other sites

@,

 

This part of code is for the pop up. You do not need to change any code. It's enough to activate in Admin => configuration => More Pics => Use SMALL_IMAGE_ Restrictions => set to true.

It will then apply the small image size defined in Admin => Configuration => Images.

Of course Small image width and height should be filled in there.

Share this post


Link to post
Share on other sites

@,

 

This part of code is for the pop up. You do not need to change any code. It's enough to activate in Admin => configuration => More Pics => Use SMALL_IMAGE_ Restrictions => set to true.

It will then apply the small image size defined in Admin => Configuration => Images.

Of course Small image width and height should be filled in there.

 

I have the image loading at the proper size, its the file size that worries me. It's loading a large image shrunk down to 250 px wide. It's loading them slow (line by line) and I was wondering if the main image could be cached in the thumbs folder at its smaller size (250 px) so it loads quicker on the product info page. 

Share this post


Link to post
Share on other sites

@,

 

ok, I made a mess, this has nothing to do with extra images.

Did you add the KISSIT_MAIN_PRODUCT_IMAGE_WIDTH and KISSIT_MAIN_PRODUCT_IMAGE_HEIGHT configuration entries??

Please Check in Admin => Configuration => Images =>

Can you check in the source code in your browser that you get a numeric value for image size in the main image??

Share this post


Link to post
Share on other sites

I went back over the instructions and this thread. It appears as though I have some very old code (which I've modified 100 times) and I do not have bxGallery anywhere. 

 

So since I don't have bxGallery when I followed this instruction:

 

 

dd the following lines immediately ABOVE the closing ?> at the bottom of the file ( set to your own choice of image size )

  // Width and height of the main product_info.php image
  
define 'KISSIT_MAIN_PRODUCT_IMAGE_WIDTH'300 );
  
define 'KISSIT_MAIN_PRODUCT_IMAGE_HEIGHT'200 );

 

It really does nothing for me. I don't have anything I can edit in the admin -> images area that is associate with KissIT. 

 

I guess what is working so far is because the wrapper function is used ( tep_image() )

 

I do however have this in the admin -> images area:

 

 

Product Information Image Width 250

Product Information Image Height 0

 

Now, when I look at the code which is actually controlling that main image on the product_info.php this is what I see:

<script language="javascript"><!--
document.write('<?php
			echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), (MOPICS_RESTRICT_PARENT=='false'?'':0), (MOPICS_RESTRICT_PARENT=='true'?'':250), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>';
			?>');
//--></script>

If I change that MOPICS_RESTRICT_PARENT=='true'?'':250 to something like 137, it actually changes the main image on the site. So I do not believe it's even pulling that main image from the admin -> images setting. 

I hope I haven't completely confused you! I am just at a bit of a loss trying to get this particular area to work. 

Share this post


Link to post
Share on other sites

@,

 

you have a for me unknown version of more pics.

try this:

			echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), 250, 250, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>';

and use there instead of 250 the size you wish

Share this post


Link to post
Share on other sites

Hopefully this can get fixed for the next version but I was having an issue with upscaling images (outputting with a black background and the image came out far too large).

 

Modified the Image.php file on line 270 to 

 imagecopyresampled ( $new_image, $this->_image, ($max_width-$this->_width)/3, ($max_height-$this->_height)/3, 0, 0, $max_width, $max_height, $this->_width, $this->_height);

Originally it was $this->_width*2 and the same for height. I'm guessing this was some left over testing code  :)

Share this post


Link to post
Share on other sites

Oh, that didn't work, it just pulled up a blank page. 

 

Here is some code that is working for the little thumbnails (they are being cached to the thumbs folder):

<script language="javascript"><!--
document.write(\'<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id'].'&invis='.(MOPICS_GROUP_WITH_PARENT=='true'?$mo_item:($mo_item+1))).'\\\')">' . tep_image(DIR_WS_IMAGES . $mopics_images[$mo_item], addslashes($product_info['products_name']), (MOPICS_RESTRICT_PARENT=='false'&&$mo_item==0&&MOPICS_GROUP_WITH_PARENT=='true'?'':30), (MOPICS_RESTRICT_PARENT=='false'&&$mo_item==0&&MOPICS_GROUP_WITH_PARENT=='true'?'':30), 'hspace="5" vspace="5"') . '</a>\');
//--></script><noscript>
<a href="' . tep_href_link(DIR_WS_IMAGES . $mopics_images[$mo_item]) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $mopics_images[$mo_item], $product_info['products_name'], '0', '60', 'hspace="5" vspace="5"') . '</a>
</noscript>

Here is the code I edited (copying from above) and it doesn't show errors, but the main image is not showing on the page. 

<script language="javascript"><!--
document.write(\'<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']). '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), (MOPICS_RESTRICT_PARENT=='false'?'':0), (MOPICS_RESTRICT_PARENT=='true'?'':250), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>\');
//--></script><noscript>
<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], (MOPICS_RESTRICT_PARENT=='false'?'':60), (MOPICS_RESTRICT_PARENT=='false'?'':60), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>
</noscript>

I am not sure why the tep_image isn't thumnailing to the thumbs folder. 

Share this post


Link to post
Share on other sites

@,

 

you should check your html output. Most browsers call it source code, or use the shortcut: Ctrl+U.

Then have a look on the image code and check if you have there the image width and height included.

The only need for kissit to work is that you use the tep_image function and pass a numeric value for image height and width.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×