Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[CONTRIBUTION] CoolIris for osCommerce v0.1


tomatoman

Recommended Posts

http://addons.oscommerce.com/info/6385

 

CoolIris for osCommerce

 

"CoolIris" is a new way of browsing the web and adds a different browsing experience to your website.

 

http://www.cooliris.com/

 

Enabling the embedded wall will allow customers to grab the code and upload to their own webpages and blogs, generating links to your site and products. You will also gain RSS feeds for all categories on your site.

 

Although better XML generation options are available this package includes a manual version for backward compatibilty. A pure PHP5 version may be made available in future versions.

 

 

 

 

INSTALLATION

 

Installation is easy with three new files and only involves a few lines of changes to your code.

 

 

CONFIGURATION

 

In the Admin section of your site you can now configure CoolIris settings from Configuration->Product Listing

 

* 'Activate CoolIris' switches it on or off

 

* 'Slideshow Settings' allows you to choose an embedded wall or a slideshow link. You can also choose to have the embedded wall maximised or minimised but your customers can choose a setting for themselves. This will stay active for the current session only. Future versions will allow registered users to choose a permanent setting from their account page.

 

* 'Window Width' chooses a window width for the embedded wall only. This is forced to a 1:1.689 aspect ratio.

 

* 'CoolIris Only' will toggle the normal product listing on or off. This setting only takes effect when the embedded wall is active. Not advised at this time. Future versions will allow registered users to choose a permanent setting from their account page.

 

 

RECOMMENDATIONS

 

I recommend you use high-quality images for your products. You should also use an image-resizing script for optimal bandwidth use and resizing. If you do use such a scipt you should alter lines 187 and 188 in catalog/cooliris.php for your optimised thumbnails and large images respectively.

 

Comments, suggestions and bug reports welcome.

Link to comment
Share on other sites

I get no images in cooliris on advanced search results page.

 

Hi Jon

 

A couple of questions:-

 

1. Did you install the code just before the </head> tag in advanced_search_result.php?

2. Is it working on category pages?

3. Which osC version are you using?

 

If you're still having problems could you post the contents of your <head></head> tags on advanced_search_result.php here for me to have a look?

 

Stewart

Link to comment
Share on other sites

1. Did you install the code just before the </head> tag in advanced_search_result.php?

Yes

2. Is it working on category pages?

Yes

 

<?php
/*
 $Id: advanced_search_result.php,v 1.72 2003/06/23 06:50:11 project3000 Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_ADVANCED_SEARCH);

 $error = false;

 if ( (isset($HTTP_GET_VARS['keywords']) && empty($HTTP_GET_VARS['keywords'])) &&
   (isset($HTTP_GET_VARS['dfrom']) && (empty($HTTP_GET_VARS['dfrom']) || ($HTTP_GET_VARS['dfrom'] == DOB_FORMAT_STRING))) &&
   (isset($HTTP_GET_VARS['dto']) && (empty($HTTP_GET_VARS['dto']) || ($HTTP_GET_VARS['dto'] == DOB_FORMAT_STRING))) &&
   (isset($HTTP_GET_VARS['pfrom']) && !is_numeric($HTTP_GET_VARS['pfrom'])) &&
   (isset($HTTP_GET_VARS['pto']) && !is_numeric($HTTP_GET_VARS['pto'])) ) {
$error = true;

$messageStack->add_session('search', ERROR_AT_LEAST_ONE_INPUT);
 } else {
$dfrom = '';
$dto = '';
$pfrom = '';
$pto = '';
$keywords = '';

if (isset($HTTP_GET_VARS['dfrom'])) {
  $dfrom = (($HTTP_GET_VARS['dfrom'] == DOB_FORMAT_STRING) ? '' : $HTTP_GET_VARS['dfrom']);
}

if (isset($HTTP_GET_VARS['dto'])) {
  $dto = (($HTTP_GET_VARS['dto'] == DOB_FORMAT_STRING) ? '' : $HTTP_GET_VARS['dto']);
}

if (isset($HTTP_GET_VARS['pfrom'])) {
  $pfrom = $HTTP_GET_VARS['pfrom'];
}

if (isset($HTTP_GET_VARS['pto'])) {
  $pto = $HTTP_GET_VARS['pto'];
}

if (isset($HTTP_GET_VARS['keywords'])) {
  $keywords = $HTTP_GET_VARS['keywords'];
}

$date_check_error = false;
if (tep_not_null($dfrom)) {
  if (!tep_checkdate($dfrom, DOB_FORMAT_STRING, $dfrom_array)) {
	$error = true;
	$date_check_error = true;

	$messageStack->add_session('search', ERROR_INVALID_FROM_DATE);
  }
}

if (tep_not_null($dto)) {
  if (!tep_checkdate($dto, DOB_FORMAT_STRING, $dto_array)) {
	$error = true;
	$date_check_error = true;

	$messageStack->add_session('search', ERROR_INVALID_TO_DATE);
  }
}

if (($date_check_error == false) && tep_not_null($dfrom) && tep_not_null($dto)) {
  if (mktime(0, 0, 0, $dfrom_array[1], $dfrom_array[2], $dfrom_array[0]) > mktime(0, 0, 0, $dto_array[1], $dto_array[2], $dto_array[0])) {
	$error = true;

	$messageStack->add_session('search', ERROR_TO_DATE_LESS_THAN_FROM_DATE);
  }
}

$price_check_error = false;
if (tep_not_null($pfrom)) {
  if (!settype($pfrom, 'double')) {
	$error = true;
	$price_check_error = true;

	$messageStack->add_session('search', ERROR_PRICE_FROM_MUST_BE_NUM);
  }
}

if (tep_not_null($pto)) {
  if (!settype($pto, 'double')) {
	$error = true;
	$price_check_error = true;

	$messageStack->add_session('search', ERROR_PRICE_TO_MUST_BE_NUM);
  }
}

if (($price_check_error == false) && is_float($pfrom) && is_float($pto)) {
  if ($pfrom >= $pto) {
	$error = true;

	$messageStack->add_session('search', ERROR_PRICE_TO_LESS_THAN_PRICE_FROM);
  }
}

if (tep_not_null($keywords)) {
  if (!tep_parse_search_string($keywords, $search_keywords)) {
	$error = true;

	$messageStack->add_session('search', ERROR_INVALID_KEYWORDS);
  }
}
 }

 if (empty($dfrom) && empty($dto) && empty($pfrom) && empty($pto) && empty($keywords)) {
$error = true;

$messageStack->add_session('search', ERROR_AT_LEAST_ONE_INPUT);
 }

 if ($error == true) {
tep_redirect(tep_href_link(FILENAME_ADVANCED_SEARCH, tep_get_all_get_params(), 'NONSSL', true, false));
 }

 $breadcrumb->add(NAVBAR_TITLE_1, tep_href_link(FILENAME_ADVANCED_SEARCH));
 $breadcrumb->add(NAVBAR_TITLE_2, tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, tep_get_all_get_params(), 'NONSSL', true, false));
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<title><?php echo TITLE; ?></title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<?php include(DIR_WS_MODULES . FILENAME_COOLIRIS_HEADER); ?></head>

Link to comment
Share on other sites

Thanks Jon

 

Which versions of PHP and osC are you using, and on which platform (Windows, LAMP, etc.)?

 

Could you do a search on your site where it fails, view the source, and post the lines between <head></head>?

 

Is suspect that it's either those pesky W3C URLs or the way I'm determining the page.

Link to comment
Share on other sites

PHP Version 4.3.9

HTTP Server: Apache/2.0.52 (Red Hat)

 

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<base href="http://www.magnet4less.com/">
<title>Applied Magnets</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<link rel="alternate" href="http://www.magnet4less.com/cooliris.php?keywords=detector&search=yes" type="application/rss+xml" title="" id="gallery">
</head>

 

Cooliris black viewer is there...just no pics in it.

Link to comment
Share on other sites

PHP Version 4.3.9

HTTP Server: Apache/2.0.52 (Red Hat)

 

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<base href="http://www.magnet4less.com/">
<title>Applied Magnets</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<link rel="alternate" href="http://www.magnet4less.com/cooliris.php?keywords=detector&search=yes" type="application/rss+xml" title="" id="gallery">
</head>

 

Cooliris black viewer is there...just no pics in it.

 

Ok, if you have a look at http://www.magnet4less.com/cooliris.php?ke...&search=yes from the link above I can see a 1054 SQL error.

 

Try changing line 63 of catalog/cooliris.php from

 

$from_str = "from (" . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_CATEGORIES . " c, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c) left join " . TABLE_MANUFACTURERS . " m using(manufacturers_id) left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id ";

 

to

 

$from_str = "from (" . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_CATEGORIES . " c, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c) left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id=m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id ";

Link to comment
Share on other sites

Hi, I tested this morning, seems like a great idea but I ran into a few problems though, firstly only 2 images show in cooliris on the whole site, the boxes have the product names but no images except for 2 products.

 

Another issue I noticed was the rss feed on the index page throws an error and goes to this page: "http://sitename.com/cooliris.php?category_depth=top" the error is:

XML document must have a top level element.
Line: 0 Character: 0

 

But the rss feeds work if I click to go into a category, where cool iris is only shown.

 

Also if you turn off cool iris in the admin, it also turns off the normal product listing too, which can probably be fixed by proper bracket placement in the product_listing.php

 

Is this also supposed to show on the front page or just on the product listing?

 

Kind regards

Chris

Link to comment
Share on other sites

Hi, I tested this morning, seems like a great idea but I ran into a few problems though, firstly only 2 images show in cooliris on the whole site, the boxes have the product names but no images except for 2 products.

 

Another issue I noticed was the rss feed on the index page throws an error and goes to this page: "http://sitename.com/cooliris.php?category_depth=top" the error is:

XML document must have a top level element.
Line: 0 Character: 0

 

But the rss feeds work if I click to go into a category, where cool iris is only shown.

 

Also if you turn off cool iris in the admin, it also turns off the normal product listing too, which can probably be fixed by proper bracket placement in the product_listing.php

 

Is this also supposed to show on the front page or just on the product listing?

 

Thanks Chris

 

The blank RSS feed on index.php is intentional and will be cleaned up on the next release. There will be choice of using the new products, showcase or all products feed (maybe). When that's done it will be viewable on the front page if you want it.

 

Good catch with the product listing. I added the 'Cooliris only' option at the last minute and the instructions for the product_listing.php changes need amending. It's another reason it's listed as not recommended at this time as there are other issues around display options - I need to have a think and keep this simple. Too much complexity and too many core file changes will negate what I'm trying to do here.

 

Do you have nested products (products in categories which also have sub-categories) by any chance? I've left out the 'nested' option in the v0.1 beta release as I assumed it detracted from the sub-category selection. That'll teach me to assume. If not, PM your site and I'll have a look at the image paths on the RSS. There may be another bug there.

Link to comment
Share on other sites

I forgot to say also in the includes/modules/cooliris_header.php line 31, there is a link that links to an offsite javascript file.

 

That file needs to be there for the non-embedded wall and link option. It should only show up if you select these options.

Link to comment
Share on other sites

Hi there thanks for the help I PM'ed you a min ago.

 

I also noticed a problem with if you have the "shop by price" mod installed too, I get the cooliris box on the page with

"Error!

 

Unable to determine the page link!"

 

That error is a link which looks like this:

 

 

Which is probably my htaccess anti xss script and fwr security pro? as the link then gives a 403 forbidden error page.

 

Just thought I'd let you know of this.

Link to comment
Share on other sites

I'll whitelist the files which should be using the Cooliris mod in the next preview release. That should make it safe to use with almost any other contribution.

 

If you want to add Cooliris to any other pages you will have to add to the whitelist and ensure compensating code is in the cooliris.php XML-RSS generation script.

Link to comment
Share on other sites

Hi Chris

 

It should be working in IE too. Have you cleared the IE cache just in case you've still got saved image files from your development work.

 

I spoke too soon. Even their own site isn't working in IE this afternoon. It looks like they may be tinkering with the swf file.

Link to comment
Share on other sites

It seems to me this does not work in IE until you go to cooliris website and download their tool that matches your browser.

Firefox it worked fine without having to do this.

 

That's a strange one. I'll look into it.

 

Bug fix version with a couple of new features should be out this evening.

Link to comment
Share on other sites

Cooliris should work without downloading anything - it's looking like server problems their end. It's only a flash file after all. I'm waiting for a response from them now.

 

There is a workaround but it means your file won't automatically upgrade.

 

Thanks for the help with the beta-testing.

Link to comment
Share on other sites

Thanks, I can see the potential of this mod, I remembered my friend showing me his iPhone.I was thinking just a gimick etc....Its very similar, I was just playing with it a min ago and its pretty good fullscreen, download the plugin for firefox then do a fullscreen google search haha you end up with a wall of infinite results! excellent idea for a mod!

Edited by chrish123
Link to comment
Share on other sites

Getting this strange error at the following URL:

 

http://www.bazaarwala.com/cooliris.php?cPa...db90e35b19c8e97

 

Warning: Missing argument 3 for currencies::display_price(), called in /home/bzr/public_html/cooliris.php on line 185 and defined in /home/bzr/public_html/includes/classes/currencies.php on line 70

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

 

select value from currencies WHERE currencies_id =

 

[TEP STOP]

 

Please help. Anyways a great piece of work. Thanks :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...