Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


Everything posted by rudolfl

  1. Hi all, When one views site on small screen, top bar shows a menu icon. Clicking on this icon only produces shopping cart. I would like to display category tree there. Is it possible? Thanks, Rudolf
  2. Hi, Some cleanup is required as W3C validation fails. Yes, I know it is minor, but I hate errors and warnings -- sometime they can hide deeper underlying issues. 1. Header Tags "noscript" module adds html code inside <head>. This module should be separated from generic header tags as generic tags loaded inside <head> in template_top.php May new set of similar modules ("body_tags") is required to allow modues to be included in the body? noscript should be part of that. I can imagine other functionality that can be part of it. Or, perhaps, modify header tags mechanism to allow for more precise placement? 2. Missing "itemscope" in "New Products" module. Two files: /includes/modules/content/index/templates/new_products.php Line 44 should be changed from: <div class="row" itemtype="http://schema.org/ItemList">to <div class="row" itemscope itemtype="http://schema.org/ItemList"> /includes/modules/new_products.php Line 54 should be changed from: <div class="row" itemtype="http://schema.org/ItemList">to <div class="row" itemscope itemtype="http://schema.org/ItemList"> 3. /include/modules/boxes/bm_shopping_cart.php Line 97 should be changed from: $cart_contents_string .= '<p>' . MODULE_BOXES_SHOPPING_CART_BOX_CART_EMPTY . '</p>'; to: $cart_contents_string .= '<li><p>' . MODULE_BOXES_SHOPPING_CART_BOX_CART_EMPTY . '</p></li>'; Rudolf I am sorry, I am new to Git (used to use SVN) and, at the moment, I find it a major pain to use GitHub to apply changes.
  3. Thanks, I know. The "problem" is that it requires code change. Ideally, those sort of things should be done via admin interface. Rudolf
  4. It would be good to have additional options in each box module that will cater for different screen sizes. Really there are only 3 screen size (PC, tablet and phone). It will make sense to allow some boxes to only be visible on PC version. Also will allow for different boxes to be developed for desktop and mobile version if required. Rudolf
  5. Hi all, I read the forums and looks like this is a well-know (for a while) issue. osCommerce does not process second street address line from PayPal. As a result, some orders have incomplete addresses. i saw some "unofficial" fixes, but could not apply them as they did not correlate with the code I have. osCommerce 2.3.4 PayPal express v 1.2 API version 60.0 Is there any fix? Thanks, Rudolf
  6. rudolfl

    Smart Filtering?

    Thank you, I will check them out. Rudolf
  7. rudolfl

    Smart Filtering?

    Hi all, Before I go into development of one, I wanted to ask if one exist. I want an add-on that will allow: -- pricing selection via slider (like in woocommerce). -- selection by attribute (like color for example). Or, perhaps, selection by an arbitrary tag. Currently I have lots of products and it makes it very difficult for customers to find what they need. Currently I just use lots of categories. This approach has issues: -- too deeply nested categories are not good for both bots and customers -- customers don't read -- they like visual representation -- adding a new product involves copying it to multiple categories I imagine an add-on that will allow me to have few top-level categories that clearly separate products by type (Mens clothing, Ladies clothing for example). Then, may be a second level that separate by subtype (dress, skirt for example). Then have all of the products shown simultaneously. Customer will adjust the slides for minimum and maximum price and this will narrow down the list of results. Then customers will click on brand selector and this will filter it more down. Then they would click on "black" selector and this will filter it down more. Filter will stay in place until reset by customer. Thanks, Rudolf
  8. I just found an incompatibility. If you use "Purchase without Account" add-on, not all transactions will be passed to Google Analytics. This is the problem with "Purchase without Account". It de-registers session at the start of "checkout_success" page, well before my code runs. In order to fix it, edit checkout_success.php Close to the top, you will find code that deletes customer details and de-registers session variables. (part of "Purchase without Account" installation). Cut all of that code and places it at the bottom of the file after inclusion of "template_bottom.php" and before inclusion of "application_bottom.php" This will fix the issue. Took me a while to figure out while some orders were not recorded in GA! Rudolf
  9. I created the contribution to support Google Analytics Enchanced eCommerce tracking. COntribution is here: http://addons.oscommerce.com/info/9117 This is a support thread Rudolf
  10. rudolfl

    Google Tag Manager

    GTM replaces many other code snippets that every website grows over the years. This includes AdWords conversion trackig, Google Analytics and others. Instead of changing the code, one can just add a tag via GTM and it all works. Makes website clean. There are alos many other things, like custome events, etc.. that can be set up in GTM. An example -- I want to set up Google Analytics. In case of osCommerse, I will have to go and install corresponding header tag. In case of other website, it will be a matter of installing a plugin or manually changing the code. If GTM is installed, you simply add the corresponding tag via Tag Manager Interface at Google and all is working. Basically, lots of development is replaced by a single interface that can be sed by non-developers. I suggest you read up and watch video of what GTM can do for you. I am no expert (not yet), but I do like what I learned about it. Rudolf
  11. rudolfl

    Google Tag Manager

    I am planning to develop Google Analytics Enchanced eCommerce code that uses GTM Data Layer. Few month ago, I did the GA module that uses "ga" to push the information to Google Analytics, but i find that GTM is a better way to manage all of it. Rudolf
  12. rudolfl

    Google Tag Manager

    Google recommends putting GTM code right after opening <body> tag. This is why I did not use header tags module -- I wanted to make sure it gets into exactly right place. Yes, I know, it will work in other places as well, but this may break some tags in the future. Better stick with recomendation. Also, there may be other modules/code that use GTM datalayer. One has to make sure, datalayer is initialised first. Rudolf
  13. Sorry, I neglected the thread for a while! I did not do the Bootstrap versin of the site, but it should be easy to port. I am sure that most of the code changes in installation instructions will still be relevant. Rudolf
  14. Thank you for the contribution. I found few annoying issues with PWA. I put some "band aid" fixes, but would be good to get problem fixed in main stream code. 1. Order confirmation/status e-mails include the link to the order info page. In case of a guest checkout, customer can not login and customer gets frustrated. Link should not be included in case customer checked out as a guest. Perhaps add a message about not being able to see the details, but say they can do so if they create an account next time. 2. Consider situation -- customer tries to checkout as a guest, then abandons shopping cart for a while. Then customer comes back. This creates a problem, as customer e-mail is in database already, so they can no longer check out as a guest or create an account. Or customer went through to the shipping (guest account created), then hits BACK button and tries to check out as a guest again. At the moment, I just allowed duplicates of e-mails, but this causes whole lot of other issues. Proper way would be to run periodic checks and clean out entries that are expired. In case customer comes back before session expired, old entry should be either re-used or removed. Current code causes lost customers and it is not very obvious. 3. Related to the one above -- guest customer can just abandon the cart and this causes "zombie" entry in database. Should really be cleaned out periodically. (actually will be good to see a report of those "cleaned" entries) 4. Consider situation where existing customer with an account just want to check out as a guest. Should they be redirected to a login or should they be allowed? I think, they should be allowed to check out as quest if they want to. Rudolf
  15. There is another problem with PWA module -- order confirmation e-mail contains link to "detailed invoice". But, since customer does not have an account, link is broken and customers are unhappy. Link should not be included in e-mail if customer checked out as guest. Find: $email_order = STORE_NAME . "\n" . EMAIL_SEPARATOR . "\n" . EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n" . EMAIL_TEXT_INVOICE_URL . ' ' . tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id, 'SSL', false) . "\n" . EMAIL_TEXT_DATE_ORDERED . ' ' . strftime(DATE_FORMAT_LONG) . "\n\n"; Replace with: $email_order = STORE_NAME . "\n" . EMAIL_SEPARATOR . "\n" . EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n"; // If checked out as guest, do not include order URL if (!$order->customer['is_dummy_account']) $email_order .= EMAIL_TEXT_INVOICE_URL . ' ' . tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id, 'SSL', false) . "\n"; $email_order .= EMAIL_TEXT_DATE_ORDERED . ' ' . strftime(DATE_FORMAT_LONG) . "\n\n"; Rudolf
  16. Hi all, This contribution has a flaw in design. Consider situation: Customer tries to buy without an account, then drops out before completing the order. Customer will never be able to complete the transaction ever again. Here is what happens: When customer tries to buy without an account, customer details are entered in database. Once order is completed, details are erased. If customer does not complete the order, details are never erased and customer can not use same e-mail address! A "band-ais" solution is to modify create_account.php Find line: $check_email_query = tep_db_query("select count(*) as total from " . TABLE_CUSTOMERS . " where customers_email_address = '" . tep_db_input($email_address) . "'"); and change to: $check_email_query = tep_db_query("select count(*) as total from " . TABLE_CUSTOMERS . " where customers_email_address = '" . tep_db_input($email_address) . "'" . "and guest_account='0'"); This way, e-mail check is only performed on "real" customers and quest customer can use same e-mail again to complete the order. However, this is a dirty solution -- original customer entry is no "zombie" entry in database and never gets cleaned. One can add code to create_account.php to detect quest customers with same e-mail and clean up all old entries before creating a new one. But what if customer never returns? Really, a stand-alone script is needed to be run as cron job to remove all guest account entries that are older than, say 1 day. Rudolf
  17. Hi all, Is there a plugin that allows to use product image by selecting an existing file on the server? CRE Loaded has that mechanism and it is quite useful. Thanks, Rudolf
  18. Hi, Sorry, did not try on 2.2. You can try to use current instructions and adapt them to your site. I would suggest upgrading from 2.2 anyway, as it is very outdated. Rudolf
  19. rudolfl

    Purchase without account - not working

    On line 364 you have code: <?php // PWA BOF if (!isset($HTTP_GET_VARS['guest']) && !isset($HTTP_POST_VARS['guest'])) { // PWA EOF ?> The idea is that when user logs in as quest, there is no requirement for passsword. In your case, for some reason, you put that condition around ALL of customer information. I suggest you move those lines to line 586. Rudolf
  20. Current situation -- Google verified my code is correct and Google engineering team is looking into the issue. So, I guess, contribution is good to go as is. Rudolf
  21. There is a small issue -- shopping cart events (products addition/deletion) do not work. Code appears correct and right information is sent to Google. I am currently engaged with Google tech support trying to sort out the issue.
  22. rudolfl

    How To Make Contributions

    Hi, Made a first contribution last night and have a question -- how does one edits the description of a contribution already made? I wanted to fix a spelling mistake and add a link for support. This is a contribution in question: http://addons.oscommerce.com/info/9117 Thanks, Rudolf
  23. Thanks, My site is 2.3.1 and did not have the module. No wonder I could not find it. Rudolf
  24. Is anyone interested in google analytics HT module that works with new Universal Analytics? I switched to Universal and had to write new module to support it, If there is an interest, how do I submit/uload it? Thanks, Rudolf
  25. Hi Guys, Couple of questions: 1. How do I find if I use "normal" or "bootstrap" version of osCommerce. Actually, what is the difference between the two? (Sites in question are www.hatsfromoz.com.au and www.beltsfromoz.com.au) 2. Readme file says that AdWords conversion tracking was removed and is part of core osCommerce. Where is it??? I can not find settings to enable it. Thanks, Rudolf