Jump to content

Welcome, Guest!

By registering with us, you'll be able to discuss, share and private message with other members of our community.


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by datakick

  1. datakick

    Spam attack via contact form

    There's a bug in captcha module that allows contact form submission when Login attempts settings is set to non-zero value. So this should be the first thing you should check.
  2. datakick

    Adding discount to order throws exception

    I can't reproduce it. Does it happen on all orders, or just this particular one?
  3. datakick

    Custom payment method validation error

    @yaniv14 was right, this bug was already fixed in January, but we forgot to release new version. I've just packed and release new version of this module
  4. Hi guys, I'm creating my very own paid OPC module. It's still work in progress, there is at least one week of work left. However, significant part of the module is already done, and I'd really like to hear your opinions. Both on checkout flow / design / etc. What's different in this OPC: - I tried to reverse the flow a bit -- I want to give the customer the option to choose shipping and payment option first, before the personal information. - I've incorporated login into the flow directly -- if you enter the email that already exists, you'll be prompted for password and log in immediately. If email does not exists yet, you'll continue with guest checkout So, if you have a minute, please have a look at demo account and try it out. Just remember - it's still work in progress -- you can't actually complete the order, and checkout for logged-in customer doesn't work at all. Download You can download this module here. Remember that it's still an alpha version Screenshot
  5. datakick

    Help me develop killer One Page Checkout module

    Yes, it is production ready. Of course, you should test all the flows yourself to be sure. Like with every other module đŸ™‚
  6. datakick

    Help me develop killer One Page Checkout module

    I've just released new version 0.3.0. This version adds some new functionality, but more importantly it fixes serious login-related bug introduced in 0.2.0. I strongly suggest you to update to this new version NEW FUNCTIONALITY Support for manual exemption in VAT module. Your customers can now click I qualify for VAT relief checkbox Added password reset functionality Added floating UI notification snackbar to inform user about various events (invalid password, wrong discount coupon code,...) BUGFIXES Fixed serious bug regarding login user Fixed bug with not showing all customers addresses
  7. datakick

    Help me develop killer One Page Checkout module

    I can't believe I forgot to implement password recovery. I'll implement it right away and release new version soon I've added this to my backlog, but with low priority. I won't implement this anytime soon. But thanks for feature request I'm not sure this should be part of checkout module. This looks like an ideal job for tbhtmlblock module Yes, it should be. You might want to do some minor css tweaks to better integrate checkout page, but in general it should work out of the box This is not implemented. I've added this to my backlog and it will be added soon. But it will probably be hidden behind some settings option, because not everyone needs this You can test this module on my demo account
  8. datakick

    Help me develop killer One Page Checkout module

    No, I haven't heard any such complaint. Also, I've just made a test checkout on my iPad without any problems or errors.
  9. Regular expression is invalid, it should be enclosed in start/end delimiters, ie '/^*gold|gold|GOLD.*/' where / is a delimiter. Also, drop the escape:'html':'UTF-8' part. It should look like this: {if (preg_match('/^.*gold|gold|GOLD.*/', $product->name))} ... {/if}
  10. datakick

    Help me develop killer One Page Checkout module

    I've just released new version 0.2.0. Here are the main features: 1) you can now choose between unified block with both shipping and payment options, of have these two sections rendered separately. Unified block: Separate blocks: 2) There's an option to render logos for payment and carriers 3) Initial support for form extension. Third party modules can now extend checkout forms, and add their own fields (or even sections). For example, my premium version of revws module (in upcoming version) will render checkbox to ask user for consent to send review request. And of course, there were some bugs fixed. You can download the new version from my site
  11. datakick

    Redirect a old category

    It really depends on where you want to redirect. If you want to redirect to homepage on your new site, simply add constant url. If you, however, want to redirect to specific product, then you will need to use interpolation. This is how it can be done: 1) Trigger: you will want to use Page View trigger, and page Product. This rule will be executed every time someone opens your product page 2 ) Conditions: enter conditions that matches products you want to redirect. In my case I'll redirect all products name contains text Price alert (I test this on my demo account) 3) Action: choose redirect action. Now we need to construct redirect url. For this, we use Interpolate values method. This allows us to create static text with dynamic placeholder -- part of the text will be substituted for product information. I will redirect to google search, and use product Link Rewrite as a search term. To enter placeholder, simply enter @ character and system will offer you available parameters. Note that the @ character can't be inside word, so you might need to first write space, then hit @, and remove space after you select placeholder. The result should look like this: Every time someone opens product page that matches conditions, he will be redirected to google search page with friendly url / link rewrite as a search query. You can test this on my demo account for Price Alert product. I hope this gives you idea how to implement your redirection rules. You can do this for other type of pages as well (say category page).
  12. datakick

    Redirect a old category

    You should be able to use my conseqs module to achieve that
  13. Revws - Reviews module This topic is here to offer support for revws module. Continuation of this topic Links Download: you can download this module here Demo: you can test revws module on my demo account Front Office / Back Office Bugs and feature requests: if you find any problem, or if you would like to see some new functionality, please add it to issue tracker on github. Additional resources revwsrecent - very simple module to display recent reviews in tab on your homepage
  14. datakick

    [Free Module]Revws - Product Reviews

    @ariom the image url should not look like yours. They should include only image id, not product id. That means that url https://www.mudrashop.com/7327-home_default/telo-mare-90x165-cm-spugna-jacquard-stelle-marine-home-sweet-home.jpg is correct. I don't know how you managed to get product id to the image url. Do you have some module or override that do this? Anyway, you are going to have problems with this schema, because most modules (and tb core) expects image id to be single identifier. Note that you already have some problems on your site. On your homepage, products img elements contains this code <img class="img-responsive center-block" srcset=" https://www.mudrashop.com/7900-home_default_smallest/borsina-a-tracolla-in-pelle-intrecciata-aba-368.jpg 211w, https://www.mudrashop.com/7900-home_default_smaller/borsina-a-tracolla-in-pelle-intrecciata-aba-368.jpg 218w, https://www.mudrashop.com/4663-7900-home_default/borsina-a-tracolla-in-pelle-intrecciata-aba-368.jpg 250w " sizes="(min-width: 1200px) 250px, (min-width: 992px) 218px, (min-width: 768px) 211px, 250px" alt="BORSINA A TRACOLLA IN PELLE INTRECCIATA ABA 368" title="BORSINA A TRACOLLA IN PELLE INTRECCIATA ABA 368" itemprop="image" width="250" height="250"> As you can see, srcsset attributes references 3 versions of the image with id 7900, but only one of them contains product id (and is accessible). I suggest you to investigate this problem right away. Edit: it looks like this is caused by enabled PS_LEGACY_IMAGES option. You could try these steps 1) move legacy images: 2) disable Legacy Images option 3) regenerate images 4) regenerate .htaccess
  15. datakick

    thirty bees 1.1.0 Preview

    This is because bleeding edge is mirroring 1.0.x branch, while 1.1.0 pre-release is based on 1.1.x branch. That means that bleeding edge will give you only bugfixes implemented since from 1.0.8. New features or other 1.1.0 specific commits are in 1.1.x branch only.
  16. the same fix applies, but this time replace all occurrences of dropDatabase with dropDatabaseCustom
  17. datakick

    [Free Module]Revws - Product Reviews

    I can't reproduce this issue. I've just tested on my demo account and it seems to be working correctly
  18. datakick

    Strong Customer Authentication - SCA

    Of course it should work with every OPC module, but unfortunately it's not that simple. It's because payment modules are (historically) based on hookPayment which directly returns html code. This html code is supposed to contain one payment button to submit the standard checkout form. And it's very hard to reuse this html code inside different flow, like in OPC. For example, while in standard flow click on payment button submits/completes the checkout, in OPC it usually only selects the payment method. Most OPC modules works because of some black magic. They usually render the original html code inside invisible section of the page, and in the same time they parse the html and scrape information (payment logo, text, etc). They then render their own html content using these information. When you click on final submit button, they must also perform virtual click on the (hidden) payment button. This is very complicated process, and it doesn't work in 100% of the cases. In this particular case, @haylau uses OPC module that doesn't do this job well enough.
  19. Search and replace all occurrences of createDatabase with createDatabaseCustom in module php files
  20. datakick

    Blackhole for bots module permissions

    Definitely not. I was just answering your question why this happens. It doesn't mean that this is correct behaviour đŸ™‚ Moreover, the two installation methods -- installing from zip file and installing from remote repository -- should be unified and work in the same way. Right now they use different code with different results. For example, if you update module from thirtybees repository, its directory is deleted and then re-created from scratch. This means that *any* assets that module might store inside its directory are lost (for example uploaded files). I'll create new github issue for this EDIT: actually there is already an issue for this: https://github.com/thirtybees/thirtybees/issues/522
  21. datakick

    Blackhole for bots module permissions

    Because the code to extract zip archive intentionally do that đŸ™‚
  22. datakick

    Free Module: Loyalty Points [genzo_krona]

    That's weird. I've tested login functionality right now and it works. Could you try in incognito mode?
  23. datakick

    nginx configuration for thirtybees

    Well, I don't see what apache brings to the table. Nginx can take care of url rewriting, ssl, gzip, serving static assets, etc. There's nothing left for apache to handle. Unless you need some special mods (mod_security, etc). I don't need those, so I'm perfectly happy to not use it.
  24. You might find this nginx configuration useful if you want to run your thirtybees on nginx + php-fpm server { listen 80; index index.php index.html; server_name localhost; root /var/www/default; # use original IP address changed by cloudflare set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from; set_real_ip_from 2400:cb00::/32; set_real_ip_from 2606:4700::/32; set_real_ip_from 2803:f800::/32; set_real_ip_from 2405:b500::/32; set_real_ip_from 2405:8100::/32; set_real_ip_from 2c0f:f248::/32; set_real_ip_from 2a06:98c0::/29; real_ip_header CF-Connecting-IP; # root location / { try_files $uri $uri/ /index.php?$args; index index.php; } # Rewriting for images pretty url - both jpg and webp formats location ~* \.(eot|gif|ico|jpg|jpeg|otf|pdf|png|svg|swf|ttf|woff|webp)$ { rewrite ^/([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$1$2$3.jpg break; rewrite ^/([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$1$2$3$4.jpg break; rewrite ^/([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg break; rewrite ^/([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg break; rewrite ^/c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2$3.jpg break; rewrite ^/c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2.jpg break; rewrite ^/([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$1$2$3.webp break; rewrite ^/([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$1$2$3$4.webp break; rewrite ^/([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$1$2$3$4$5.webp break; rewrite ^/([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.webp break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.webp break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.webp break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.webp break; rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.webp$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.webp break; rewrite ^/c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.webp$ /img/c/$1$2$3.webp break; rewrite ^/c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.webp$ /img/c/$1$2.webp break; allow all; } # php rewriting location ~ \.php$ { # Installer is using /install/sandbox/anything.php url to test rewritting capabilities # it should rewrite to /install/sandbox.test.php file rewrite ^/(.*)/sandbox/anything.php$ /$1/sandbox/test.php break; try_files $uri $uri/ /index.php?$args; index index.html index.htm index.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_intercept_errors on; fastcgi_read_timeout 360s; include fastcgi_params; } }
  25. datakick

    thirty bees 1.1.0 Preview

    This problem is already fixed. If you want to continue testing, replace the `define` with `const`, as shown here