Post by straightlight » Tue Jul 12, 2016 11:24 pm

JNeuhoff wrote:
straightlight wrote: The only problematic with this methodology is that it would tend to merge the extensions with the core array being passed into the parameters. In order to merge arrays as such, it would need separated keys; such as: 'extension' and 'core' for troubleshooting purposes.
Could you please put it into plain English, so others can understand what you are talking about? And, if possible, provide an example?
I am speaking this theory in plain English. I do not know where the limitations of understanding is pretty much based on others as there isn't much that can be done about that. However, the explanation above does provide with details the causes and effects, the pros and the cons if the Opencart team would consider such approach; to merge contribution arrays with the core.

The most generated errors being found on Opencart forum originates from contributed programming.

Regards,
Straightlight


Guru Member

Posts

Joined
Mon Nov 14, 2011 11:38 pm
Location - Canada, ON

Post by Johnathan » Wed Jul 13, 2016 11:00 pm

straightlight wrote:I am speaking this theory in plain English. I do not know where the limitations of understanding is pretty much based on others as there isn't much that can be done about that. However, the explanation above does provide with details the causes and effects, the pros and the cons if the Opencart team would consider such approach; to merge contribution arrays with the core.
I'm fine with people having theoretical issues about whether these edits should be done, but I'm looking for actual errors that occur by making these edits. If there are any actual examples of errors that occur because of these edits, I'm fine with looking for a different way. But if there aren't any issues, then it's certainly more advantageous for everyone (developers and store owners) to have old extensions work out-of-the-box with 2.3, rather than have to wait weeks or months for each of their extensions to be updated.

Regarding your argument: OpenCart 2.2 and earlier already merge contributions with the core, since they're all stored in the same folders, so it's not really working differently than what has been done in past versions. Tracking issues in contributions vs. core extensions already has to be done, and can usually be pretty easily tracked based on the file name that is causing the error. Not to mention, core extensions should not really be throwing errors anyway, unless they're being modified (e.g. by vQmod or ocMod) --- and if that's the case then it's going to happen whether or not the extensions are merged together.

I agree my edits are probably not a long-term solution, and there are better solutions for how extensions are handled --- my hope is that at some point we'll get what many developers have suggested in the past, which is a dedicated "extensions" folder that has a sub-structure for extension files. I'm sure others have their own ideas for how extensions should be handled as well. But at this point, I'm only looking for actual errors that occur because of these edits.

Image
Image Image Image Image Image Image


User avatar
Global Moderator

Posts

Joined
Fri Dec 18, 2009 3:08 am


Post by straightlight » Wed Jul 13, 2016 11:29 pm

Tracking issues in contributions vs. core extensions already has to be done, and can usually be pretty easily tracked based on the file name that is causing the error.
I would totally have to beg to differ on this observation. If that being the case, there wouldn't be so many and countless posts on the forum regarding the lack of differences between a core file and extension files. This has been an ongoing issue since a very long time on the Opencart forum where people still cannot instantiate those differences. It is good to say and consider that most people may not know about programming. Although, there is still no way for them to distinguish the origin of the error messages being provided on their error logs and, that, if they do find the error log page after activating the error events.

With that being said, merging the arrays without separating the keys would only bring further confusion to troubleshoot reported issues. Let's take a look at the API, this issue before the beta release was a very long time reported problem as it took more than several weeks and several months to fix them. It is agreeable to state that old contributions don't have to be left behind as they can still be useful. Although, what is really needed here is an integration of interfaces with namespaces which the core would only rely on those specific namespaces whenever an error occurs. The re-assembled folders being worked on Opencart v2.2.0.0 already demonstrates the facts that namespaces already represents the image of namespaces for the platform when loading the libraries which means idealistically this is the way to go as the first idea has already been deployed from the core since.

Not something different compared to last versions you say? Opencart v2.2.0.0 startup files have completely been moved into different locations and divided to their proper subject folder names in order to register the classes. According to me, that is already a huge difference.
I agree my edits are probably not a long-term solution, and there are better solutions for how extensions are handled --- my hope is that at some point we'll get what many developers have suggested in the past, which is a dedicated "extensions" folder that has a sub-structure for extension files.
While I do agree with this part, there are definitely better solutions on how extensions should and could be handled in the future. Most that we hear on the forum and custom jobs is how popular is the Journal theme which is almost entirely aside the core files which does not necessarly bring a good interest for people who has to upgrade since this extension uses static functions rather than objects from the libraries, controllers, models and themes. Now, my analogy is not to bring the publicity of this extension on the topic but what I am addressing, however, is the fact that these are one of the other possibilities that Opencart should consider by similarity. The Override Engine already uses static functions as well. Although, it is just too bad that portions of templates in the admin especially gets looped in during the development. Otherwise, it would of been quite futuristic approach to be considered for many custom developments.

As for VQMod and OCMod, these subjects were already discussed the last time we had similar conversation for upgrade changes a few years back and other the changes being categorized in Opencart v2.2.0.0, there has been few changes but not as much as we could further describe.
I'm sure others have their own ideas for how extensions should be handled as well. But at this point, I'm only looking for actual errors that occur because of these edits.
I couldn't agree more on this statement. Although, merging the arrays wouldn't be one of them but rather to separate the subjects by pushing the arrays rather than merging due to the mount of bug reports being encountered.

The most generated errors being found on Opencart forum originates from contributed programming.

Regards,
Straightlight


Guru Member

Posts

Joined
Mon Nov 14, 2011 11:38 pm
Location - Canada, ON

Post by JNeuhoff » Wed Jul 13, 2016 11:41 pm

straightlight wrote:Although, merging the arrays wouldn't be one of them but rather to separate the subjects by pushing the arrays rather than merging due to the mount of bug reports being encountered.
We discussed this ages ago on the Override Engine forum thread. You never came up with a single example on how to improve things. Your above statement is just confusing and vague. For a start, OpenCart is mainly made of PHP files (classes and language files), and templates. And it's organised in a folder structure reflecting the MVCL design. This has nothing to with arrays. And what do you mean by 'subjects'?

MHC Web Design
Override Engine * Integrated VQMod * Multilingual SEO * Instant Option Price Calculator * TrustPilot Reviews * Download Options * Free Download Buttons * Export/Import Tool * Template Switcher PHP/Twig


User avatar
Expert Member

Posts

Joined
Wed Dec 05, 2007 3:38 am


Post by straightlight » Thu Jul 14, 2016 12:06 am

We discussed this ages ago on the Override Engine forum thread. You never came up with a single example on how to improve things.
Well, one thing I do remember since that long time period is the answer you didn't provided until yesterday by reading your criticism instead of understanding the source of the problem. You've completely ignored my replies since that time, sent you PMs and here you are today stating that my explanations are being vague. Forum not only requires extensions but full support that comes with it. It is agreeable to say that a free extension does not require anyone to provide support for but the product you are trying to demonstrate and to prove by overriding files quite lowers the feedback quality due to the lack of response on your contribution that you provide. Your extension exists since many years and has been used for many years. Although, the problem I've tracked has never been solved period since no matter how it began.
Your above statement is just confusing and vague. For a start, OpenCart is mainly made of PHP files (classes and language files), and templates.
That is correct. Opencart already delivers PHP files, classes, models, language files and templates. However, so is your extension, so as VQMod and OCMod extensions. If it is as confusing to understand the concept based on the methodology Opencart has been developed from base, then I can only say that it doesn't really make any difference compared to the way an extension would be made. which is the good side of it and if there are developers who haven't seen the difference, so far, that's ok since we all can get there eventually.

Although, merging the subjects, such as the extensions and the core array altogether would not be the best approach. You want some facts? Test those arrays yourself and see if putting all the keys and values into the same tree with solved our problems.

With all that being said, an interface is definitely the way to go and to ensure the adapters are loading sequentially. The only problem that would remain with that would be the sort orders.

The most generated errors being found on Opencart forum originates from contributed programming.

Regards,
Straightlight


Guru Member

Posts

Joined
Mon Nov 14, 2011 11:38 pm
Location - Canada, ON

Post by JNeuhoff » Thu Jul 14, 2016 12:34 am

Although, merging the subjects, such as the extensions and the core array altogether would not be the best approach. You want some facts? Test those arrays yourself and see if putting all the keys and values into the same tree with solved our problems.
I am not testing arrays, I am usually testing classes, language files, and templates, located in folders. Nothing to with arrays, the latter is a systematic arrangement of similar objects, usually in rows and columns, such as in http://php.net/manual/en/language.types.array.php

MHC Web Design
Override Engine * Integrated VQMod * Multilingual SEO * Instant Option Price Calculator * TrustPilot Reviews * Download Options * Free Download Buttons * Export/Import Tool * Template Switcher PHP/Twig


User avatar
Expert Member

Posts

Joined
Wed Dec 05, 2007 3:38 am


Post by straightlight » Thu Jul 14, 2016 3:33 am

Here's an interface example structure that should be similarly used into the Opencart Engine: http://stackoverflow.com/questions/8247 ... interfaces

This should be practical in the future to regroup the subjects between the core and the extensions.

The most generated errors being found on Opencart forum originates from contributed programming.

Regards,
Straightlight


Guru Member

Posts

Joined
Mon Nov 14, 2011 11:38 pm
Location - Canada, ON

Post by JNeuhoff » Fri Jul 15, 2016 9:58 pm

Coming back to the subject of OpenCart 2.3 Beta:

I ran some quick tests with it, with an adapted Override Engine and Integrated VQmod (OCmod with VQmod XML support), and all seems to be working just fine. It's unfortunate that the folder structure has changed for extensions, but it won't be rocket science to upgrade 3rd party extensions (modules, feeds, payments etc) to this new directory structure. Adding backward compatibility for 2.2 extensions is fine, and desirable, but should be implemented as Events, not as VQmod XML scripts.

MHC Web Design
Override Engine * Integrated VQMod * Multilingual SEO * Instant Option Price Calculator * TrustPilot Reviews * Download Options * Free Download Buttons * Export/Import Tool * Template Switcher PHP/Twig


User avatar
Expert Member

Posts

Joined
Wed Dec 05, 2007 3:38 am


Post by Louis7777 » Sun Jul 17, 2016 9:13 pm

Qphoria wrote:Upgrade script "appeared" to work fine. I will dig deeper with it, but no errors on the surface (naturally, since I've maintained it 8) )
Does this mean that 2.3 will have an integrated upgrade system?

New member

Posts

Joined
Fri Oct 25, 2013 9:10 am

Post by EvolveWebHosting » Wed Jul 20, 2016 4:18 am

Louis7777 wrote:
Qphoria wrote:Upgrade script "appeared" to work fine. I will dig deeper with it, but no errors on the surface (naturally, since I've maintained it 8) )
Does this mean that 2.3 will have an integrated upgrade system?
I wouldn't call it 'integrated' but one that works will be included. It will be similar to what older versions had but it will actually work to properly upgrade from any of the 1.5.x or early 2.x versions.

Image
https://www.evolvewebhost.com
Unhappy with your current host? We can migrate your account today (usually for no fee)! Visit our website and signup and we'll take care of the rest!
24/7/365 support
Image


User avatar
Active Member

Posts

Joined
Fri Mar 27, 2015 11:13 pm
Location - Denver, Colorado, USA

Post by Daniel » Sun Jul 24, 2016 2:27 pm

Guys there is a plan.

I'm setting up opencart to able to run on the cloud.

So I have been including features that will give customers the ability to still be able to customise their stores.

So far i Have added

1. theme editor (this is the reason on the dev branch i have switched to twig)
2. Language editor
3. language import system (I have already added the system to import languages from crowdin)
4. extension store built into the admin.

the extension store in the admin will enable store owners to install extensions with just one click.

Im going to write an extension builders guide.

Extensions are going to be allowed only under extension, themes and language folders.

1. It means that opencart installations will require a few extra folder permission changes.
2. It should keep things cleaner.
3. easier to install and uninstall extensions.
4. no need to use ftp to install extensions.

if you want to build something that is going to override the default functionality it is recommended to use the events system. the ocmod / vqmod system should only be used as a last resort.

Replacing default installed files will not be possible. instead you can use an event to override a controller, model, view that is in the extension folders.

OpenCart®
Project Owner & Developer.
OpenCart commercial support now available!


User avatar
Administrator

Posts

Joined
Fri Nov 03, 2006 6:57 pm

Post by labeshops » Sun Jul 24, 2016 7:56 pm

Daniel wrote:
if you want to build something that is going to override the default functionality it is recommended to use the events system. the ocmod / vqmod system should only be used as a last resort.

Replacing default installed files will not be possible. instead you can use an event to override a controller, model, view that is in the extension folders.
Is there documentation somewhere about how the events system works? I for one have no idea what this even is, let alone how it works.

Running Opencart v2.2 with multi-stores from http://www.labeshops.com which has links to all my stores.

Image


User avatar
Expert Member

Posts

Joined
Thu Aug 04, 2011 4:41 am
Location - Florida, USA

Post by JNeuhoff » Sun Jul 24, 2016 9:43 pm

labeshops wrote: Is there documentation somewhere about how the events system works? I for one have no idea what this even is, let alone how it works.
You can find some documentation for this on github

MHC Web Design
Override Engine * Integrated VQMod * Multilingual SEO * Instant Option Price Calculator * TrustPilot Reviews * Download Options * Free Download Buttons * Export/Import Tool * Template Switcher PHP/Twig


User avatar
Expert Member

Posts

Joined
Wed Dec 05, 2007 3:38 am


Post by Daniel » Sun Jul 24, 2016 9:57 pm


OpenCart®
Project Owner & Developer.
OpenCart commercial support now available!


User avatar
Administrator

Posts

Joined
Fri Nov 03, 2006 6:57 pm

Post by bzark » Sun Jul 24, 2016 11:25 pm

Daniel wrote:I'm setting up opencart to able to run on the cloud.
How far out is the cloud solution to being production ready?

New member

Posts

Joined
Wed Oct 01, 2014 10:32 pm

Post by qahar » Mon Jul 25, 2016 4:11 am

Backward compatibility is good think for introducing new features while supporting the old one.
But I'm wondering to what version is all the backward compatibility still remain?
I suggest to add @deprecated Removed in version 2.x.x.x comment to give developers more info about it.

User avatar
Expert Member

Posts

Joined
Tue Jun 29, 2010 10:24 pm
Location - Indonesia

Post by Daniel » Sun Sep 11, 2016 11:09 pm

bzark wrote:
Daniel wrote:I'm setting up opencart to able to run on the cloud.
How far out is the cloud solution to being production ready?
its not to far off. im in the process of rebuilding th main oc web site as there are a few new features i need to add to the main site for the cloud.

OpenCart®
Project Owner & Developer.
OpenCart commercial support now available!


User avatar
Administrator

Posts

Joined
Fri Nov 03, 2006 6:57 pm

Post by angadarora » Tue Oct 18, 2016 3:35 am

Daniel wrote:
bzark wrote:
Daniel wrote:I'm setting up opencart to able to run on the cloud.
How far out is the cloud solution to being production ready?
its not to far off. im in the process of rebuilding th main oc web site as there are a few new features i need to add to the main site for the cloud.
are we looking at something like a (way better) opensource shopify model ;D .

And one thing i wanted to ask was about change-logs , i mean for a not so expert coder like me they used to be really helpful to make the decision of going through all the troubles of updating the core and all the installed modules themes other changes (you get the drift).

Newbie

Posts

Joined
Sun Dec 08, 2013 12:05 am
Who is online

Users browsing this forum: No registered users and 7 guests