Jump to content



Member Since 02 Aug 2016
Offline Last Active Yesterday, 07:11 PM

Topics I've Started

Local Pdf Generation Add-On.

08 November 2018 - 04:07 PM



We have created an addon for generating PDF files locally. If you are interested you can install the add-on by following the instructions on the github page: https://github.com/p...eb/pp_local_pdf.


Kind regards,

Please Redesign The Structure Of The New Email Template Editors.

15 July 2018 - 05:55 PM



We, PoppedWeb, have had our problems here and there with the new email templates. We think there is much room for improvement and after suggesting multiple things in private conversations (with no reply), we thought it would be a good idea to take this to the fora.


First of all, the structure couldnt be worse. We can't grasp why you would choose Twig, a new language with a new learning curve, over Smarty as the renderer. Not only is the developers environment completely compromised because of this, it also is very unfriendly to the CS-Cart users themselves. 


But lets get to the 'ideal' structure (in our opinion):


1. If Smarty were to be used, the code for the layout builder could have been re-used, variables could have been defined as a new 'type' and best of all you could drag and drop and create the email layout like that. This would have been much more useful for the CS-Cart users.


2. Use the same structure as we currently use for theme development. Adding new variables or adjusting variables is very chaotic at the moment. In Smarty we could just assign it, retrieve it, etc, now we have to write entire classes just to adjust / give a new variable to Twig.


3. Custom e-mail template development is very hard since it is stored in the database. Furthermore, having actual files would reduce the overall load on the database. There is no IDE which supports templates saved in a database, which also adds another disadvantage for the 'amazing developer ecosystem', as advertised by CS-Cart.


4. A simple layout could look as follows:

- Styles

    - Addons

        - [Addon ID]


    - Styles.less

    - Responsive.less 

- Templates

    - Blocks 

        - Blocks like 'contact us' or a banner.

    - Views

         - Blockmanager (theme).

         - Index (load styles in header & other parameters)

    - Variables - all variables which can be added in the layout editor as a seperate template (so they can be overridden / adjusted!).


5. Add the option for responsive styles. Yes, responsive e-mail templates is an actual thing. This is used a lot and is currently not 'really' possible.


6. Products tables and such can be edited more easily by just editing the block settings.


We think this 'rough' sketch could be a good starting point, it would be great if the rest of the developers can take a quick look and refine the initial step to a better overall e-mail development system.


Kind regards,

Mysql Database For A Large Number Of Products

20 March 2018 - 06:30 AM

7. after started website, on some time later(might be years later), I might will need to pay someone to customize entire system like this; each language will have their own separate table on database. because cs-cart company don't wants extra work for themselves and keeps all languages in one table. but if you search anything, MySQL server has to scan every records even if it's not included on those tables. for example, if you search in Russian Language anything, logically we know it's can't be found in arabic or chinese tables. so, why then MySQL server has to scan all those records? of course, in this case, you will have to have a separate URL stricture for every language and visitors will search from there. for example; ru.cs-cart.com visitors has to search only from Russian language tables. imagine that you have 1 million products, 10% of them has variation of 6. so, 100K * 6 = 600K + 900K = 1.5 million record and if you have 10 languages, it will be 15 million records. so, if someone wants search anything from Russian Language, why MySQL has to scan 15 Million records? it can be done with scanning just 1.5 millions records. but these things I will need to think very later, might be after years. but good to know now upfront now.




If you really have 1 million products then you won't have a simple setup. You will probably use Oracle database or such and not Mysql. However, if you really desire to use different languages then why not change the database all together? It is way easier to do, since you will only have to change the 'database' in the config field ('my_database' . CART_LANGUAGE) and change some session based values. You can also create functions / operations / triggers in mysql which would update the value across all the databases e.g. for the settings database.


Kind regards,