markoshust's blog

Mon, 04/01/2013 - 10:22

How to setup a chroot'd SFTP account in Linux

Submitted by markoshust Mon, 04/01/2013 - 10:22

When I went to create an SFTP account for a client, which needed to be chroot'd (~ locked down to that directory), I really didn't think it would be that difficult. Setting up regular SSH and FTP accounts is usually pretty straight forward, and actually so is creating SFTP accounts. But when you add in the ability to chroot it, it becomes a bit more complex. There aren't too many good straight-forward writeups about this online that actually explain things in any detail, so I did my best and tried to keep it simple.


Fri, 01/18/2013 - 15:32

Install ionCube loader on Mac OS X

Submitted by markoshust Fri, 01/18/2013 - 15:32

It might look to be a little tricky to get ionCube Loader installed on Mac OS X, but it's actually quite easy. The ionCube Loader lets you decrypt ionCube-encoded projects so you can run software that is encrypted by the developer, or software which may be protected to specific domains and/or locations.

First, you need to visit the ionCube Loader download page.


Fri, 11/02/2012 - 11:43

Why you shouldn't use the core diff feature of MageUpdate

Submitted by markoshust Fri, 11/02/2012 - 11:43

I feel as though I have to post about this sooner rather than later. A day or two ago, Kalen of MageUpdate posted an article, Mage Core: Keeping It Clean. The idea of the script is to check your Magento installation for properly coded modules. In theory, this is an absolutely great idea, because I can certainly attest that there is a plethora of garbage modules and extensions out there.

Looking into the script details, it's a simple two-step process:


Mon, 10/29/2012 - 23:27

Deploying Magento on Heroku with Amazon RDS

Submitted by markoshust Mon, 10/29/2012 - 23:27

Heroku is a very powerful application deployment system that was initially created for Ruby on Rails apps. But, did you know that Heroku quietly released support for PHP 5? Well, they did, and I will tell you how to deploy Magento to Heroku using Git and Amazon RDS.

Your first step is to unzip your fresh Magento install and get it on git.


Mon, 08/27/2012 - 11:12

Create the checkout_cart_product_add_before observer in Magento

Submitted by markoshust Mon, 08/27/2012 - 11:12

For some reason no one can explain, it appears that the event observer checkout_cart_product_add_before never existed in Magento (even though checkout_cart_product_add_after does). Say what?!??

Anyways, it's fairly easy to go ahead and dispatch this event. Just add this to your module's config.xml to rewrite the checkout/cart model:


Wed, 08/08/2012 - 09:56

Better way to modify conditions in Magento template files

Submitted by markoshust Wed, 08/08/2012 - 09:56

As it is with almost all Magento projects, you will have times when you need to modify sections of code in custom template files. There are many approaches and ways to handle these changes, but there are some that are more optimal than others.

There is a special case regarding code blocks within conditional logic in which I like to take a certain approach. Let's say we need to make updates & changes to the following file:


Thu, 07/05/2012 - 12:28

Creating Magento Adminhtml Grids, simplified

Submitted by markoshust Thu, 07/05/2012 - 12:28

As with many coding projects with Magento, it is very easy to get frustrated, even with the smallest of tasks. Well, Adminhtml Grids in Magento aren't too much fun, even for the experienced programmer. Lacking quality tutorial posts on Google as well, I thought it was worthwhile to write up a constructed tutorial on how to create these Adminhtml Grids, in the most simplified manner possible.


Wed, 05/02/2012 - 21:19

Easiest way to install git flow on Mac OS X

Submitted by markoshust Wed, 05/02/2012 - 21:19

I've recently switched all of my git repositories to use something called git flow. Found this browsing around, and it's a WAY simpler development process than what I've been doing. Basically, it rebases, merges, creates and deletes branches for you.

Download and install GCC: https://github.com/kennethreitz/osx-gcc-installer Download and install Homebrew:


Mon, 02/27/2012 - 18:02

Packaging a community extension for distribution on Magento Connect

Submitted by markoshust Mon, 02/27/2012 - 18:02

While packaging a Magento extension is very easy, the 1.5 documentation is an epic failure. It is very poorly written, and doesn't show you exactly what to do, what the dropdowns actually mean, or even what to do after you package the extension. There are other documentation pages, but they are bloated and confusing.