I had the task to update elFinder, the file manager plugin that is used to store and manage The Word of The Day (wotd, henceforth) images. The new version has a lot of new features, like search and multiple roots. Multiple roots was the main reason for the update, but it wasn’t what we had really expected. Multiple roots meant that two directories could be managed from the same window and we didn’t want that, as different people will manage wotd and definition images respectively. But there where major differences in syntax and compatibility that convinced us the update was still needed.
After the code and files update, when testing, the plugin wouldn’t work. That was because the new version had some bugs when using jQuery library greater than 1.7.x (DEX Online had 1.8.3). Fortunately, elFinder had a branch that solved these bugs. Unfortunately, it needed newer versions of jQuery and jQuery UI than the site had, so I found myself once again updating. When everything seemed right, one admin table (which was implemented using jqGrid) disappeared completely. You guessed, it also needed a small update because jQuery deprecated some of its methods that jqGrid used.
After that I tried most of the site pages looking for errors and all looked promising, until I checked The Word Mill game. Yep, you didn’t guess. This time, it was not my fault and neither any update’s. It was simply because on local clones, definitions that the game needed to work, weren’t copied.
Albeit it might have seemed tedious and annoying, on the contrary, it was utterly constructive as I had to wander about the source code, which made me understand how it works and ease further development.
My next task is to create a separate page to manage the definition images, and write a method that creates or modifies entries in a data table, depending on users’ actions in elFinder.