Latest News: (loading..)

All Activity

This stream auto-updates   

  1. Past hour
  2. Today
  3. Hi - OK had that rethink - this one can be tricky to setup and you can often end up with the situation you are seeing if there's a glitch in the admin. When it cannot correctly calculate a value it should display: Postcode Shipping No delivery/shipping available to the selected Postcode. But if you have not set the weights correctly then you can get: Postcode Shipping The delivery/shipping fee cannot be determined at this time $0.00 The trick is to set a big final weight in each zone - something like 10000:10000 - e.g. 4:7,10:10,99:13.50, 10000:10000 If that still does not fix it then here's a code hack that will disable the module if it sees a zero value returned // class constructor function zipship() { global $order; $this->code = 'zipship'; $this->title = MODULE_SHIPPING_ZIPSHIP_TEXT_TITLE; $this->description = MODULE_SHIPPING_ZIPSHIP_TEXT_DESCRIPTION; $this->sort_order = MODULE_SHIPPING_ZIPSHIP_SORT_ORDER; $this->icon = ''; $this->tax_class = MODULE_SHIPPING_ZIPSHIP_TAX_CLASS; $this->enabled = ((MODULE_SHIPPING_ZIPSHIP_STATUS == 'True') ? true : false); // CUSTOMIZE THIS SETTING FOR THE NUMBER OF ZONES NEEDED!!! $this->num_zones = 6; if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_ZIPSHIP_ZONE > 0) ) { $check_flag = false; $check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_SHIPPING_ZIPSHIP_ZONE . "' and zone_country_id = '" . $order->delivery['country']['id'] . "' order by zone_id"); while ($check = tep_db_fetch_array($check_query)) { if ($check['zone_id'] < 1) { $check_flag = true; break; } elseif ($check['zone_id'] == $order->delivery['zone_id']) { $check_flag = true; break; } } if ($check_flag == false) { $this->enabled = false; } } // check for a zero shipping price if ($this->quote()['methods'][0]['cost'] <= 0){ $this->enabled = false; } } // class methods
  4. nope - having a rethink........
  5. Hello Kevin,

    I had a look into your new extra product fields version and found that it seems it is still addressed for 2.3.4 OsC standard only.

    It would be very nice if you could update it for 2.3.4 BS responsive community version.




  6. Yesterday
  7. @imusorka Think laterally. Cancel after one month.
  8. There is an addon named Imprint Text that just provides an input field. It involves a little less than Option Types to install it though not a great deal, as I recall. I may not understand what you mean about the images, but the thumbnailer does optimize the images. But the result will be different if you start with an image that 1 MB in size compared to one that is 100 KB.
  9. new version updated in git hub: module hide list for each checkout page class extension moved into ht module class extension clean up in direction Henry pointed out (still much more to do, I'll go for it tomorrow.) Update: uninstall ht, replace ht, install ht, remove class extension. Once this is clean and well working, I'll try to go for a separate admin page with control over each module and any page.
  10. Be careful or you'll get a tweet from Trump. Dan
  11. Forum mandated pls. ask PP that dont use Superconducting Super Collider in Texas to mine more cripton valutes because we dont recive double orders nowadays.
  12. I was getting duplicate orders as well as payments. Been over a month since it's happened though.
  13. I wonder if this setting will help anyone? Mine profile is set to block duplicate payments but I'm not sure how long it has been set like that or even how it got that way. PayPal Block Duplicate Payments Dan
  14. I have seen duplications on several cases. I have non PP payment module with same rarely duplication. But I have seen duplicated emails. I suspect to double entry threads from the shop server side sometimes. I have deleted duplicated post from oscommerce forum treads...
  15. That's how one customer described it to me. Most were not aware it happened. In every case I got two emails from PP confirming payment. For me it stopped as suddenly as it started and has not happened again. I thinnk it's a PP issue.
  16. @frankl Good one but why would we want to pay monthly for a one-time operation? Are there open-source alternatives? @Jack_mcs Option Types add-on is too much work for a heavily-modded install. Guess we'll keep it in mind for a future fresh install. As for the KISS thumbnailer, we already use it but image optimization is completely different from serving thumbs. We are talking about compression solutions such as the one mentioned by Frank above.
  17. i give yo one more hint... First do it how i explained.... then if you see it working... you will go see how easy it going to be for the whole group. just look a little more upwards in the getContent function and buildBlocks function ...look very closely to the foreach function how it is wrapped all around the other code ;)
  18. OK I'll have a deeper look. I'm right now working on the settings and pass them into hide array (groups/pages).
  19. Do it as it suits you, i just think you make a architectonic mistake.
  20. OK, but in your example you go for $module, I go for $group (navbar, header...)
  21. you not seeing it correctly... i told in the example to SHOW something when a page is setted, So you only need to do it the other way around for the call/check change it to: !in_array(basename($PHP_SELF), $this->checkPages($class))
  22. Thank you, but I still feel that it is overengineered to control each module individually. I continue with the purpose to slim up the checkout process by areas/group`s. Anyway you of course have given great ideas to me to do it in a better and easier way.
  23. function checkPages($class){ //$class what is called in the buildblocks and content modules ($module) foreach (explode(';', $myChosenPagesForThisBoxOrModule) as $page) { $page = trim($page); if (!empty($page)) { $pages_array[] = $page; } } return $pages_array; } //now i completed your work for 75% and then in buildblocks function and in getcontent //for blocks if ( $mb->isEnabled() && in_array(basename($PHP_SELF), $this->checkPages($class))) { $mb->execute(); } //for content modules if ( $mb->isEnabled() && in_array(basename($PHP_SELF), $this->checkPages($module))) { $mb->execute(); } //now i completed it for 90% ..... just need to cut the edges a little and control in admin what to do where.
  24. I do not see how to apply the group/module to page matrix only using this function
  25. quick idea on what you could buil-up further upon and make most of your current work obsolete : function buildBlocks() { global $PHP_SELF, $language; $pages_array = array('index.php', 'shipping.php'); if ( defined('TEMPLATE_BLOCK_GROUPS') && tep_not_null(TEMPLATE_BLOCK_GROUPS) ) { $tbgroups_array = explode(';', TEMPLATE_BLOCK_GROUPS); foreach ($tbgroups_array as $group) { $module_key = 'MODULE_' . strtoupper($group) . '_INSTALLED'; if ( defined($module_key) && tep_not_null(constant($module_key)) ) { $modules_array = explode(';', constant($module_key)); foreach ( $modules_array as $module ) { $class = basename($module, '.php'); if ( !class_exists($class) ) { if ( file_exists('includes/languages/' . $language . '/modules/' . $group . '/' . $module) ) { include('includes/languages/' . $language . '/modules/' . $group . '/' . $module); } if ( file_exists('includes/modules/' . $group . '/' . $module) ) { include('includes/modules/' . $group . '/' . $module); } } if ( class_exists($class) ) { $mb = new $class(); if ( $mb->isEnabled() && in_array(basename($PHP_SELF), $pages_array)) { $mb->execute(); } } } } } } } I understand you did a hard work to achieve it, but indeed to not touch the core class you had to. So with just a little code the boxes show/hide can be controlled if you tested the above... all boxes show in index and in shipping.php you could use some of you code to define the pages, you not need a constructor.
  26. You mean to do it in the template class (extension)? And how to control additional add-on modules? MODULE_BOXES_INSTALLED, MODULE_CONTENT_INSTALLED etc?
  27. you do not need to change to core boxes, modules etc to achieve that.
  28. Sorry there is a bug, I meant instead of: function get_default_pages() { return explode(',', CHECKOUT_PAGES); } this: function get_pages() { $pages_array = explode(',', CHECKOUT_PAGES); // check if pages exist for ($i=0, $n=sizeof($pages_array); $i<$n; $i++) { if ( !file_exists(DIR_FS_CATALOG . $pages_array[$i]) ) unset($pages_array[$i]); } return $pages_array; } And then: function module_..._edit_pages($values, $key) { global $PHP_SELF; $values_array = get_pages(); $output = ''; foreach ($files_array as $file) { $output .= tep_draw_checkbox_field('ht_datepicker_jquery_file[]', $file, in_array($file, $values_array)) . ' ' . tep_output_string($file) . '<br />'; } if (!empty($output)) { $output = '<br />' . substr($output, 0, -6); } .....................
  1. Load more activity