Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


Posts posted by NodsDorf

  1. We are building a new site right now with Phoenix and we'll need to use this add-on. Although it may not be ready I"m wondering if the database structure will remain the same as previous versions of OSC? Or is it too soon to tell?

    I can do a lot of database work in the meantime if so.

    Thank you @raiwa and all!


  2. According to the API documentation Authorize.net will only process request with 30 or less individual line items.

    REF: https://developer.authorize.net/api/reference/

    " • lineItems Contains one or more elements (the maximum is 30 line items "


    This is not an every shop problem, but for some it maybe more prominent than others. In the last 10+ years of using OSC I have ran into this issue exactly 3 times. It wasn't until this last time I actually found this information and realized what the problem was.


    The solution that I have used in all 3 cases thus far has been to enable COD payment module to generate a customer order. Then use the Authorize.net manual interface to charge the customer's card. From a professional standpoint this has been a bit lackluster and if I was a customer I would have some apprehensions from a random store owner telling me this is how they have to process my order.


    Thinking about this and the various industries I would imagine this issue comes up more often for others than myself. My in shop solution thought is currently running along the lines of a BYO (Build Your Own) module much like is used with computer purchases. You start with X Computer then add the options / software / hardware you want. In the end you have only 1 product being purchased but it has a multitude of options with it. Exactly how to port this idea over to a common use-able addon is unclear to me.


    Scenarios in industries with multiple similar low cost items like stickers, or screws, or greeting cards, or general office supplies may face this problem regularly and I am not sure how you port a BYO system over to such an industry.


    What have you done in the past to overcome this issue?



  3. @@pvoce

    Did you uninstall the stock oscommerce usps module before installing this one? Also which method did you use, drop on top, or self modify files?


    Your problem sounds like some data in this database wasn't cleared or ther is a missing character in the code.


    I don't know if there are any people who had this problem 14 pages is hard to read through, but I can say I did not have that issue.


    I can try and help if you want to answer those questions or show a screen shot of what the problem looks like.

  4. @@ehong33234


    The following statement in the SQL is incorrect

    products_length, products_width, products_height, products_ready_to_ship,



    The error is showing you that it can't find products_length, because the statement is not referencing a table to look at. Notice, all the other request have a p. or pd. in front of them? If you been running your store for 7 years without updating then this isn't the correct module to use as its for 2.3.+ . The statement you referenced likely was part of another addon you installed and not this particular one. Additionally it could be that your previous version of mysql allowed for minor errors in statements which prevented that statement from failing, but recently an upgrade was performed and now the statement needs corrected.


    If I have to guess I would say this code

    products_length, products_width, products_height, products_ready_to_ship

    needs to be

    p.products_length, p.products_width, p.products_height, p.products_ready_to_ship

    which would easily be verifiable by looking at your products table in your database to see if those fields are there.


    Hope that helps

  5. Hi Jack


    Step 6 in the catalog install instructions:


    6) In includes/database_tables.php, anywhere before the last ?>




    /*** Begin Header Tags SEO ***/

    define('TABLE_HEADERTAGS', 'headertags');

    define('TABLE_HEADERTAGS_CACHE', 'headertags_cache');

    define('TABLE_HEADERTAGS_DEFAULT', 'headertags_default');

    define('TABLE_HEADERTAGS_SEARCH', 'headertags_search');

    define('TABLE_HEADERTAGS_SILO', 'headertags_silo');


    /*** End Header Tags SEO ***/



    Think it needs added to that:

    define('TABLE_HEADERTAGS_KEYWORDS', 'headertags_keywords');


    At least mine did.




  6. I'm sure it is possible but I don't use that contribution so I don't know what to change. Maybe someone in its support thread has already done it.


    Didn't realize you both had different versions of the original from Chemo. Either way, I rolled back his, installed yours and everything is perfect.


    Thanks, yet again.



  7. I don't know think that sql code you are using is correct, from the looks of it. But it shouldn't be necessary if $row[minorder] exists. In that case, this should work
    preg_replace($_strip_search, $_strip_replace, strip_tags( strtr($row->name, $_cleaner_array) ) ) . "(Pack of " . $row[minorder] . ")". "\t" .


    Yep you are correct,

    The sql query wasn't formatted correctly



    Took a lot of trys but this finally worked


    Changed the $sql query to

    $sql = "
    SELECT concat( '" . $productURL . "' ,products.products_id) AS product_url,
    products_model AS prodModel,
    products.products_id AS id,
    products.minorder AS minorder,
    products_description.products_name AS name,
    products_description.products_description AS description,
    products.products_quantity AS quantity,
    products.products_status AS prodStatus,
    products.products_weight AS prodWeight, " . $extraFields . "
    FORMAT( IFNULL(specials.specials_new_products_price, products.products_price) * products.minorder * " . OPTIONS_TAX_CALC . ",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,
    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 is NULL) OR (specials.expires_date = 0) ) AND ( specials.status = 1 ) ) )
    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 " . $quotes . "
    AND categories_description.language_id = " . DEFAULT_LANGUAGE_ID . "
    AND products_description.language_id = " . DEFAULT_LANGUAGE_ID . "
    products.products_id ASC


    Added an if statement above the output for the name

    if ( $row->minorder > 1) {
                $minorder="(Pack of " . $row->minorder . ")";
           } else {

    Then added in the variable into the statement

    preg_replace($_strip_search, $_strip_replace, strip_tags( strtr($row->name, $_cleaner_array) ) ) .  $minorder . "\t" .


    Many thanks for your time and guidance, and knowledge!

  8. I tried Jack,


    Just can't figure this one out.


    I just need to add text to the name title that says Pack of $minorder


    But I don't understand your coding enough to make it work.


    I tried adding below this

    $result=mysql_query( $sql )or die( $FunctionName . ": SQL error " . mysql_error() . "| sql = " . htmlentities($sql) );

    while $result=mysql_fetch_array($sql) {

    $minorder =$row[minorder]


    Then changing

    preg_replace($_strip_search, $_strip_replace, strip_tags( strtr($row->name, $_cleaner_array) ) ) . "\t" .


    preg_replace($_strip_search, $_strip_replace, strip_tags( strtr($row->name, $_cleaner_array) ) ) . "(Pack of " . $minorder . ")". "\t" .


    That just causes a infinite loop.


    I tried a few others things but I just can't seem to get that $minorder appended to anything. I'm able to use the products.minorder column in the $sql query but not able to use its value anywhere else.


    Any help is appreciated,


  9. If you mean the entries in the column nmaed title, those are generated with this line

      preg_replace($_strip_search, $_strip_replace, strip_tags( strtr($row->name, $_cleaner_array) ) ) . "\t" .

    If that is not what you mean, please explain further and I will take another look.

    That is exactly what I meant, thanks Jack. I'll take a crack a modifing that to include the min-order number.




  10. Hi Jack or anybody that may know..


    Google requires us to modify our listing to show the price per minimum order.

    So I replaced

    FORMAT( IFNULL(specials.specials_new_products_price, products.products_price) * " . $taxCalc . ",2) AS price,


    FORMAT( IFNULL(specials.specials_new_products_price, products.products_price) * products.minorder * " . $taxCalc . ",2) AS price,


    This works great.


    But I'm having trouble finding where the title is getting generated, as I would like the output to be `title` && (pack of `minimum order`)


    Modifying our actual title wouldn't make sense because they are not sold in packs, you can order 20 or 21, but not 19. For Google display reasons we would like our price we are required to give them to be indicitive of the amount they would receive.


    Can you help with this?




  11. Thanks Jim, made the changes for the canonical tags you suggested.


    I would like to point out that you may still have a duplicate problem with including the $domain in the meta_tag name.

    $link = tep_href_link( FILENAME_PRODUCT_INFO, 'cPath=' . $cPath_new . '&products_id=' . $products_id, 'NONSSL' );
    	    $meta_tag = '<link rel="canonical" href="' . $domain . '/' . $link . '" />' . PHP_EOL;


    Your varaiable $link seems to be getting the domain via the tep_href_link() so putting the domain in front of the link makes it http//:www.site.com/http://www.site.com least that is my case. I just removed the variable $domain from my files and it appears to be working great. Either way, thank you very much.



  12. Just another follow up, I'll look into more but from what I can tell $product_id is not a global since it has no value


    $cPath_new = tep_get_product_path( $products_id );
    	  $link = tep_href_link( FILENAME_PRODUCT_INFO, 'cPath=' . $cPath_new . '&products_id=' . $products_id, 'NONSSL' );
    	  $meta_tag = '<link rel="canonical" href="' . $link . '" />' . PHP_EOL;

    $cPath_new = tep_get_product_path( $products_id ); returns empty

    $link = tep_href_link( FILENAME_PRODUCT_INFO, 'cPath=' . $cPath_new . '&products_id=' . $products_id, 'NONSSL' ); returns no product_id


    Either way in my case this is only half the problem, I also need FILENAME_PRODUCT_INFO to translate to the SEO URL we have setup.


    I can't spend much more time on this issue right now, but since the product info page is somewhat absoulte, I can remove the tag from them for now.

  13. Fixed the homepage (index.php) and the Category pages by changing this function in catalog/includes/modules/header_tags/ht_connonical.php


     if( basename( $PHP_SELF ) == FILENAME_DEFAULT ) {
    	  $link = tep_href_link( FILENAME_DEFAULT, 'cPath=' . $cPath, 'NONSSL' );
    	  $meta_tag = '<link rel="canonical" href="' . $domain . '/' . $link . '" />' . PHP_EOL;



    if( basename( $PHP_SELF ) == FILENAME_DEFAULT ) {
               if ($cPath=='') {
                   $link = tep_href_link( FILENAME_DEFAULT, '', 'NONSSL' ); }
    	  $link = tep_href_link( FILENAME_DEFAULT, 'cPath=' . $cPath, 'NONSSL' );
    	  $meta_tag = '<link rel="canonical" href="' . $link . '" />' . PHP_EOL;

    While this gets the canonical tag to display correctly given the page I'm on, I'm not sure how its shown if you access the url from a different url since my shop will redirect 301 to the correct url which is great for me.


    So a catagory page access like

    http://www. somesite .com/catalog/index.php?cPath=1 may or may not display the correct canonical tag.. for me however that would fire a redirect to the correct page which has the correct canonical tag


    As for the product_info.php pages.. I'm having trouble but working on it still..

  14. Hi Jim,


    I just installed the 1.4.3

    And found a problem with the Canonical Tag


    I'm getting Canonical tags like this:

    Home Page:

    <link rel="canonical" href="http://www.rubberstore.com/http://www.rubberstore.com/231test/?cPath=">

    Need ROOT/ROOT/ to just ROOT/ and if on home remove ?cPath=


    Category Page:

    <link rel="canonical" href="http://www.rubberstore.com/http://www.rubberstore.com/231test/orings-c-33.html">

    Need ROOT gone rest is perfect


    Products Page:

    <link rel="canonical" href="http://www.rubberstore.com/http://www.rubberstore.com/231test/product_info.php?cPath=&amp;products_id=">

    Need first ROOT gone, product info switched to SEO URL, cPath included &amp; products Id included


    I'll work on it myself but if you have a solution that would be great. I have FWRMedia Ultimate SEO URL's Installed as well.

  15. @@Gergely


    I have the same issue as Veronica.


    1146 - Table 'columb22_231osc.TABLE_MENU' doesn't exist


    select count(*) as total from TABLE_MENU x left join TABLE_MENU_TEXT y on x.menu_id = y.menu_id where y.language_id = '1'


    The problem is that Header & Footer Conent is not in my Module Box, (see screen shot)


    I don't know if we skipped some instructions or what. I have read them many times and do not believe I missed any steps. Somewhere we have to get the module installed but I don't see anywhere how to do that.


    I want to make sure I don't miss anything so here are the instructions:

    Step 1.

    Make a full backup first!!!!!!!!!!!!



    Step 2.

    Install preconditions

    These Are:


    - Allmanufacturers -Done

    - Admin extends boxes -Done




    Step 3.

    Add new menu modul to follow the path.

    I have no idea what this means ?


    Step 4.

    Add superfish-1.4.8 package to catalog/ext/jquery/superfish/




    Step 5.

    If you have already installed allmanufacturers.php be carefull.

    Allow allmanufacturers module in SCM if you like to use manufacturers in menu.



    Step 6.

    Install in Header Footer Content Modules Menu package.

    Where? / How? / I don't See it Anywhere.


    Step 7.

    If you didnt add admin boxes yet do it now.

    If you mean extra boxes.. yes done.



    Step 8.

    Add new menu elements in menu editor.

    not available because Header Footer isn't installed yet..



    Step 9.

    Configure Menu Module.

    not available because Header Footer isn't installed yet..



    Step 10.

    Look at cache enhance (A section) in upgrade_v1.0_to_v1.2.txt



    Additionally I have ran the queries you asked Veronica to:

    SELECT *
    FROM `configuration_group`
    WHERE `configuration_group_title` LIKE '%FILENAME%'

    SQL query: SELECT * FROM `configuration_group` WHERE `configuration_group_title` LIKE '%FILENAME%' LIMIT 0, 30 ;

    Rows: 2 configuration_group_id configuration_group_title configuration_group_description sort_order visible 16 FILENAME_ Define files in configuration table 1 0 18 ADMIN_FILENAME_ Define files in configuration table 1 0


    SELECT * FROM `configuration` WHERE `configuration_key` LIKE '%MENU%' 

    MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0007 sec )


    SELECT * FROM `configuration` WHERE `configuration_key` LIKE '%EXTENDS%'

    Generated by: phpMyAdmin / MySQL 5.1.56-log

    SQL query: SELECT * FROM `configuration` WHERE `configuration_key` LIKE '%EXTENDS%' LIMIT 0, 30 ;

    Rows: 4 configuration_id configuration_title configuration_key configuration_value configuration_description configuration_group_id sort_order last_modified date_added use_function set_function 423 Module Version Number SQL_EXTENDS_VERSION_NUMBER v1.1 Version number of installed module 6 1 NULL 2012-01-30 15:50:31 NULL tep_sanitize_string( 424 Extends Admin Box FILENAME_EXTENDS extends_.php Set Extends Admin Box filename. Do not edit! 18 2 NULL 0000-00-00 00:00:00 NULL tep_sanitize_string( 448 Extends example second filename FILENAME_EXTENDS_EXAMPLE2 extends_example2.php Set Extends Example second filename. Do not edit! 18 1 NULL 0000-00-00 00:00:00 NULL NULL 447 Module Version Number SQL_EXTENDS_EXAMPLE_VERSION_NUMBER v1.0 Version number of installed module 6 1 NULL 2012-01-30 16:18:36 NULL tep_sanitize_string(



    I really appreciate all the work you put into this, I would love to get it working correctly.

    Thank you very much,