Opencart 2 and GST (or other taxes) included

Have you seen the new Opencart version 2? It’s a really nice re-build of the ageing 1.x version of the simple open source shopping cart. If you’ve decided you don’t want the hassle of trying to tame Magento to your needs, you’ll notice that it’s a whole lot simpler. Unfortunately the developers have left out a critical feature in my mind. You must enter a product price (and any discounts, options, specials, etc) excluding any taxes. Tax – as configured by the store set-up, and applied according to the location of the buyer – is then applied to the product for display on the website and in the cart/checkout. If you our your client are selling products locally or nationally, but not internationally this might seem like a bit pain in the behind. Frankly I can’t understand how they would leave such a crucial piece of functionality out of the code base.

admin no taxfrontend with tax

Opencart 1.x is notoriously difficult to extend, beyond a few simple functions like payment gateways and shipping methods. Fortunately the community developed vQmod. This add-on makes a few changes to the core files, and then uses find-and-replace XML files to create modified versions of the core code and uses them instead of the originals. You can get vQmod files to change just about any functionality in OpenCart 1.x.

In Opencart 2, the developers have included their own system for rewriting the code base called OCMOD. I’m sure you can guess what it stands for. It works on exactly the same principal, although there was some disagreement on the way the XML files should be structured so the two are not strictly compatible.

I’ve written a simple OCMOD XML file to add some new fields to the admin section of Opencart. It’s based on a vQmod XML file for Opencart 1.x. The extra fields simply allow you to enter a price including your configured tax rate, and the ex tax price is calculated instantly using Javascript. Only the ex tax price is saved in the database. This mod will work with the base price, options that add or subtract from the price, qty discounts and specials.

You can download it free here:

http://www.opencart.com/index.php?route=extension/extension/info&extension_id=19744

You can contribute to the code here:

https://github.com/darkbluesun/oc2-prices-inc-tax

Screenshots below:

input-price-including-taxesspecialdiscount

option

Adding a Boolean Toggle to a grid in Joomla admin

Joomla has a fantastic tutorial on MVC components on it’s website, but it seems to stop way short of explaining how to make a fully featured admin panel.

One of the features it doesn’t seem to explain well is how to add those little green ticks and red circles that you can click and it changes (toggles) from one to the other.

Joomla Demo - Administration - Google Chrome_2013-04-30_16-55-57

I like to use it for chosing if an item will appear on the front page or not – but I’m sure you could think of other uses for it. Joomla also has a built in ‘Published’ button which is a bit simpler, so I’ll start from that and move on up. Continue Reading…

Transformed

Untitled 2On Monday I launched the newest revision of the Transform website http://www.transform.om.org/. This is the first website I’ve created by using wordpress – and it’s not half bad looking. I was really surprised at how swish a website can look with the right themes and customisation – and a few plugins.

Here is a look at the website itself. The fairly wide image in the middle is a slideshow with 5 images that take you to some of the site’s pages for more information – and the last slide is a link to a youtube video that opens up in a pretty lightbox and plays right away. That’s pretty cool. This is all part of the theme I used called ‘Duotive’.

Untitled

The website can be viewed in several different languages such as French, Italian and even Korean – thanks to a fantastic plugin called qtranslate. All the links have a 2-letter language code somewhere in the URL to keep the language. Personally I would have prefered a cookie or a session variable, but this seems to work fine.

Untitled 6

It also pulls all of the short term missions opportunities for Transform participants into the website. The best part of this is that the options change depending on which country you are from – so with geoip country detection, the options are correct for your country and your currency. I used a simple rss feed reader and customised the code pretty heavily for this.

Untitled 3

The gallery is also pretty swish. The videos are hosted by OMNItube – something I’ve helped work on at OMNIvision for a while now – the advantage being no ads. The picture gallery is a part of the theme again, with nice lightboxes. The second video has subtitles based on the language you are viewing the site in, but this is just done with seperate videos at the moment.

Untitled 4

 

Lastly the prayer map is pretty cool. You click on one of theĀ Mediterranean countries and it gives you a short bio with links to full information and how to pray for the country.

I’ve had some ups and downs with the website. The contact form that comes with the theme has no anti-spam protection so the owners got spammed as soon as it went online. Of course there’s always a better plugin available so I just dropped one in and the problem is solved. All in all, wordpress is a great CMS for simple and complex websites – there’s no reason to waste time with Joomla.

Back to work

Well, my holidays are over now and it’s time to get stuck into some work. This week I’ve been working on a number of projects side by side. There’s our church website www.gracecbc.com where you can find the upocoming events, duty roster and latest sermons – I’ve been fixing little problems with the site and adding some new features. For example, you can now comment on an event or a testimony if you are logged into facebook, and you can share it on your wall too! If you want to listen to Grace Wamberal sunday messages on your iphone then you can just hit the itunes button and the podcast will be added to itunes automatically! I’ve also been editing and uploading the messages myself to take a load off other people in the office. I’m in the process of re-designing the whole site so that it is future-ready and fun to visit, even from your mobile. Aside from that website I’ve been in the office fixing printers and hard drives installing software for people.

It sure has been fun working in the Central Coast Outreach Services office in Bateau Bay, seeing the great work that they do helping those who are down and out. John and Barbara are good company. It helps me to stay accountable to people if I’m working in an office, rather than working at home where I could just slack off. I haven’t been able to work full days at the moment though, because my wrist is still giving me trouble. I developed ‘intersection syndrome’ on the ship – it is similar to RSI – so I can’t use the computer for too long at a time while it is heaing, which is really a pain, because computers are what I do! I see that God is teaching me to be patient and not to try to fill my days with good works, rather to come to Him to learn.

As I plan to go to England next year and keep building the kingdom with the skills He has given me, I want to keep serving God here on the central coast. I will spend the most time with my home church, Grace Wamberal, but I’m looking to help out other local churches as well. I will visit Erina Baptist soon to do some simple Audio/Visual housekeeping, and I have some projects with OM in Melbourne. To do all this full time I rely on people to continue to support me financially, and for new people to partner with me in this work. My needs are very few at the moment since I stay with my parents – fuel, mobile phone, physio and the occasional meal out – but I will need more when I go to England. If you feel God leading you to partner with me, please do talk to me and I can share more.