Jump to content


  • Content count

  • Joined

  • Last visited

Profile Information

  1. J0J0

    Automatically send data feed to Froogle

    check out the function tep_get_product_path($products_id) in general.php . Greets, Johannes
  2. J0J0

    Automatically send data feed to Froogle

    find the two sql queries at line 68 and use the following code: $language_id = "1"; //change it $sql = " SELECT concat( '" . $productURL . "' ,products.products_id) AS product_url, products_model AS prodModel, products_weight, manufacturers.manufacturers_name AS mfgName, manufacturers.manufacturers_id, products.products_id AS id, products_description.products_name AS name, products_description.products_description AS description, products.products_status AS prodStatus, FORMAT( IFNULL(specials.specials_new_products_price, products.products_price) * " . $taxCalc . ",2) AS price, CONCAT( '" . $imageURL . "' ,products.products_image) AS image_url, products_to_categories.categories_id AS prodCatID, categories.parent_id AS catParentID, categories_description.categories_name AS catName FROM categories, categories_description, products, products_description, products_to_categories left join manufacturers on ( manufacturers.manufacturers_id = products.manufacturers_id ) left join specials on ( specials.products_id = products.products_id AND ( (specials.expires_date > CURRENT_DATE) OR (specials.expires_date = 0) ) ) WHERE products.products_id=products_description.products_id AND products.products_id=products_to_categories.products_id AND products_to_categories.categories_id=categories.categories_id AND categories.categories_id=categories_description.categories_id AND products_description.language_id='".$language_id."' ORDER BY products.products_id ASC "; $catInfo = " SELECT categories.categories_id AS curCatID, categories.parent_id AS parentCatID, categories_description.categories_name AS catName FROM categories, categories_description WHERE categories.categories_id = categories_description.categories_id AND categories_description.language_id='".$language_id."' "; Btw, great contribution! Many thanks, Calvin! :thumbsup: Greats, Johannes
  3. J0J0


    Hello Ralf, You made a nice contribution. It easy to install and well coded. Thanks! :) Users with older versions of MySQL (IMHO all before 4.0) will see a silly behavior. German "Umlaut"-characters like "?", "?" and so on are sorted after the character "Z". The easiest way to solve the problem is the following piece of code. For that replace the old function "tep_get_countries" in catalg/includes/functions/general.php with this one: function tep_get_countries($countries_id = '', $with_iso_codes = false) { global $languages_id; $countries_array = array(); if (tep_not_null($countries_id)) { if ($with_iso_codes == true) { $countries = tep_db_query("SELECT cn.countries_name, c.countries_iso_code_2, c.countries_iso_code_3 from " . TABLE_COUNTRIES . " c, " . TABLE_COUNTRIES_NAMES . " cn WHERE c.countries_id = '" . (int)$countries_id . "' AND c.countries_id = cn.countries_id AND cn.language_id = '" . $languages_id . "' ORDER BY countries_name"); $countries_values = tep_db_fetch_array($countries); $countries_array = array('countries_name' => $countries_values['countries_name'], 'countries_iso_code_2' => $countries_values['countries_iso_code_2'], 'countries_iso_code_3' => $countries_values['countries_iso_code_3']); } else { $countries = tep_db_query("select countries_name from " . TABLE_COUNTRIES_NAMES . " where countries_id = '" . (int)$countries_id . "'AND language_id = '" . $languages_id . "' ORDER BY countries_name"); $countries_values = tep_db_fetch_array($countries); $countries_array = array('countries_name' => $countries_values['countries_name']); } } else { $countries = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES_NAMES . " WHERE language_id = '" . $languages_id . "' ORDER BY countries_name"); while ($countries_values = tep_db_fetch_array($countries)) { $countries_array[] = array('countries_id' => $countries_values['countries_id'], 'countries_name' => $countries_values['countries_name']); } // UMLAUT HACK $temp_countries_array = array(); foreach ($countries_array as $key => $data) { $sort_name = $data["countries_name"]; $sort_name = str_replace (array("?","?","?","?","?","?","?"), array("A","O","U","a","o","u","s"), $sort_name); $temp_countries_array[$sort_name] = $data; } ksort($temp_countries_array); $countries_array = array(); foreach ($temp_countries_array as $key => $data) { $countries_array[] = $data; } // END UMLAUT HACK } return $countries_array; } Greets, Johannes
  4. Hello guys, Sometimes I have seen pages that use the users input of their intern search to catch more traffic from search engines like google, yahoo etc. In our case it could be a page like 'products that others searched for'. Every phrase that was entered has to be collected in a database and should be shown on a separate site that can be reached easily by the search engine spider. The benefits for the shop owner / SEO would be: - he gets more traffic from the search engines - he gets new relevant keywords for further search engine optimizing - he can understand what the users are looking for The benefits for the user: - he can find the shop / product even when he made typos or when he doesn?t know the correct product name But there could be also some disadvantages: - you could get a lot of visitors with bad conversations - you could be seen as a spammer in googles eyes I?m a conscientious objector performing community service and only have a little bit free time. But maybe somebody likes the idea and wants to share his work with the community?! :) Greets, Johannes
  5. J0J0


    Greg, I thank you very much - this is a great contribution! I haven?t read the whole thread, so maybe my suggestion is unnecessary: You will have to disable the option "Check User Agent" in the session section of the configuration. Otherwise the customers? session is going to be destroyed when PayPal loads the ipn.php page. Now it isn?t possible to finish the order. You will be redirected to the login page and the shopping cart is still full (but the money is away). Greets, Johannes
  6. Now it exists: http://forums.oscommerce.com/index.php?showtopic=67344 Greets, Johannes
  7. Hello, does it work? ^_^
  8. J0J0

    Sold out options

    A really fast way: Add this text to catalog/inlcudes/configure.php: $disabled_prodcuts = array(14 => true, 32 => true); (Disables the products with the id 32 and 14) Go to catalog/product_info.php: Replace this: <td class="main" align="right"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></td> (near line 323) with that: <td class="main" align="right"><?php if(!isset($disabled_products[$product_info['products_id']])) echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); else echo TEXT_SOLD_OUT; ?></td> Go to catalog/modules/product_listing.php: Replace this: case 'PRODUCT_LIST_BUY_NOW': $lc_align = 'center'; $lc_text = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id']) . '">' . tep_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a> '; break; (near line 131) with that: case 'PRODUCT_LIST_BUY_NOW': $lc_align = 'center'; if(!isset($disabled_products[$listing['products_id']])) $lc_text = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id']) . '">' . tep_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a> '; else $lc_text = " "; break; and add to your language files something like this: define('TEXT_SOLD_OUT', "<span style=\"color:red\">Sold out!</span>"); Ok, this hack could be better, but it is good enough for me.
  9. Tank you Salvo. I fixed that error. The author added an unnecessary line break in the language files. That produced the ?header already sent?- error message. Ok, here are my files: http://j0j0.haushoppe.de/osCommerce/faqdesk_for_ms2.zip What you should do: 1. Make a backup! Really, I have no clue how faqdesk works! ;-) 2. Try to install faqdesk as mentioned in the install files. 3. Copy my folders into your osCommerce Shop and override all files. (4. Tell me if it works. ;-) I included some functions from MS1 in the file "compatibility.php". I changed the info-box and some buttons, added rotative colours for the listings and a link back to the parent category. I removed the right boxes, the sticky future and perhaps some other things with comments. Sometimes there are instructions, sometimes not. Some are from the original author, too. Again, I give no warranty at all! It just works well for me. By the way: My script removes a leading zero in the front-end, which gives me the opinion to sort the entries... Good luck, Johannes
  10. Me. I had to do several changes and included some functions from MS1, but I don?t know all steps I?ve done anymore. In my version the pictures and the diving into more than one page are broken ? so I stripped them out. It?s just a silly hack! :) At the moment I?ve really no time. But I can give you all changed files. That should be a good starting point. You could try to build a working FAQDesk installation on a virgin osCommerce Shop with me files and you could make a patch for the public, too. Example: http://www.footbag-shop.de/catalog/faqdesk_index.php (LiveShop - no test orders please!!) J0J0 (From Germany, excuse my bad English ;-)
  11. :) Welcome back. That are really good news. I hope that your situation is now fixed up. Hopefully the basic structure is still consistent. Because I have to update a heavily modified shop environment... :rolleyes: J0J0
  12. J0J0

    All Products = Spider Food

    Look at this page: http://www.webmasterworld.com/forum3/9424.htm An underscore is considered to be a letter whereas a hyphen is not. So blue_widget is one long 11-letter word. By the way, can anybody help me with that problem? http://forums.oscommerce.com/viewtopic.php...start=10#212865 Please! ;)
  13. I'm trying to integrate oscaffiliate_banners1.0 (with the new text link making page) in oscaffiliate_vs_1.09_MS2. But I have several problems: affiliate_banners_product.php shows absolutely nothing. (just the text "Choose the product you want to display on your website from the choices below:") There is also a silent error with affiliate_banners_text.php (updated version). I have two textboxes. After filling them with text and submitting them the login-screen is shown again... I've tried to build some workarounds. I added the following code to the top of the affiliate_banners_build.php page (perhaps it helps somebody) to make affiliate_banners_product.php unnecessary: <script language="JavaScript"> <!-- function make_my_id(id) { document.individual_banner.individual_banner_id.value = id; document.individual_banner.submit(); return false; } //--> </script> <?php $sql3 = "SELECT manufacturers_id, manufacturers_name FROM manufacturers"; $sql3 = tep_db_query($sql3); while ($sql3_array = tep_db_fetch_array($sql3)) { $manufacturers[$sql3_array["manufacturers_id"]] = $sql3_array["manufacturers_name"]; } $sql = "SELECT * FROM products ORDER BY products_model"; $sql = tep_db_query($sql); while ($sql_array = tep_db_fetch_array($sql)) { $id = $sql_array["products_id"]; $model = $sql_array["products_model"]; $image = $sql_array["products_image"]; $image = str_replace("./", "/", $image); $price = $sql_array["products_price"]; $manufacturers_id = $sql_array["manufacturers_id"]; $sql2 = "SELECT products_name FROM products_description WHERE products_id = '$id' LIMIT 1"; $sql2 = tep_db_query($sql2); $sql2_array = tep_db_fetch_array($sql2); $name = $sql2_array["products_name"]; $list[$id] = $name . ((isset($manufacturers[$manufacturers_id]) ? " (".$manufacturers[$manufacturers_id].")" : "")); } ksort($list); echo "<table cellspacing="0" cellpadding="0">n"; foreach ($list as $id => $name) echo "<tr style="font-size:8pt;"><td>ID: <a onclick="javascript:make_my_id($id);"><u>$id</u></a></td><td> - </td><td>$name</td></tr>n"; echo "</table>"; ?> I also need a little hack to emulate the text link making page. Has somebody built it already? I'm afraid of making something wrong on this important part of my affiliate program. For example I have no idea whether I should include the variable "affiliate_banner_id" or not?! I hope you can help me out! :bigups: Thanks, J0J0