Warning! Don't download joomla extensions from untrusted websites!

A year ago I was helping a friend to make his homepage with Joomla. We needed a facebook fan page module. Actually we didn't needed it, but I was too lazy to add the facebook fan page code myself as I had to edit the template (to do it the HTML5 way...). So instead of doing it myself - I went on a hunt for a good Facebook page module. After a short look at the JED I found my module - it had the best reviews... I tested it - it worked! Hurray!

Unfortunately the other day the facebook fan box was not displayed by the module anymore. So today I decided to have a look at the actual HTML code that was generated & I was shocked to discover a hidden link. The link was pointing to a shop for flowers, so at least it is not a malware site... I immediately thought that the site was hacked and I went to look at the PHP code of the module. It turns out the website was not hacked & the link is generated by the module code. So I downloaded the last version of the module and had a look at the code again - well, this time there was again a hidden link, but it was pointing to another site. (you know what that means right?)

Continue reading
Rate this blog entry:
0
63725 Hits
4 Comments

Ajax requests on multilingual joomla websites

Today I've been working on making Hotspots multilingual ready. Since joomla 1.6 creating multilingual websites started to look like a piece of cake. There are several tutorials that explain how website administrators could do that: http://magazine.joomla.org/issues/issue-nov-2011/item/593-Build-a-Multilingual-Site-in-Joomla-1-7

And there is also a very good webinar that CloudAccess organised and recorded:http://www.youtube.com/watch?v=gnhVVtyejPg

Continue reading
Rate this blog entry:
4
41700 Hits
1 Comment

CMandrill - Joomla transactional emails on steroids thanks to Mandrill

Apparently I've spent too much time with the Mandrill service. So much time, that I really love it, but people around me just don't get it. That is why before I introduce to your our new extension, I'll spent few minutes explaining what transactional emails are, why they matter and why Mandrill is so awesome!

So what is a transactional email? Basically it is an email sent to an individual based on an action. It could be:

  • an action they took directly
  • an action they were the target of
  • even an inaction (such as a reminder mail telling your users to log on to your website)

For example - if you register on compojoom.com, first you'll get a mail asking you to confirm your registration. This mail is a transactional email (it was sent due to an action) & it is extremely important that it lands in your inbox. If it doesn't, then you cannot complete the registration process.

Continue reading
Rate this blog entry:
1
17481 Hits
0 Comments

CUpdater now compatibles with Joomla 3

Well, as it usually happens something that needs 10mins of work turns out to be a whole day worth of work... CUpdater was originally developed for Joomla 2.5 so the update to 3.0 shouldn't have been that big of deal. Unfortunately a small change in the Joomla API can lead to serious issues. This is going to get a little technical, so if you are not in the mood you can just go to the download section :)

On Joomla 3 the findUpdate function was updated to use the JHttp get method instead of fopen. Which is of course great, however when you have an update url that is not returning what we expect things get nasty. Whenever I was trying to check for updates I was getting "No HTTP response received.". So I turned xdebug and started going through the code line for line. First were the joomla update urls -> they all were resolved just fine. Then came a compojoom update url. And voila I got the error. Copy pasting the url in the browser was returning the correct xml format expected from Joomla . So after watching the screen and scratching my head I decided to debug further. It turns out that the JHttpTransportCurl class cannot handle https urls (or at least it cannot handle them on my server). So the getResponse method in the class throws an UnexpectedValueException because curl couldn't fetch the content.Now if I'm in the backend and I manually click on the find updates button and I get an ugly error message on the screen I might get confused & annoyed, but I've caused it by clicking on the button & I'm the only one who sees it, so it is not that big of a deal. But if you have a plugin that randomly checks for updates when normal users are on the site things can confusing.

Continue reading
Rate this blog entry:
0
34375 Hits
0 Comments

CMC 1.3 released. Ecommerce360 tracking is easier than ever!

Happy new year to all of you!

We are happy to announce the first update for the year! "CMC - Mailchimp for Joomla" got a little better. We've fixed few reported bugs with the interest subscription and we've added support for ecommerce360 tracking. If you don't know what this is, have a look at the blog post from Mailchimp. Currently we support the following shopping carts/subscription systems:

Continue reading
Rate this blog entry:
2
14838 Hits
1 Comment

CMC survey!

Hey guys!

We are doing a small survey to determine what you value in the CMC extension and what features you want to have next. Thank you in advance for taking few minutes and telling us what is important to you!

Continue reading
Rate this blog entry:
0
1061 Hits
0 Comments

Hotspots 3.2.2 released

I'm happy to announce that Hotspots 3.2.2 has just been released. This is a cumulative stability update fixing both bugs on joomla 3.0 and on joomla 2.5

Here is the changelog:

+ adding a copy link button
~ category-shadow is now required in the category settings
+ adding metadata information on map view# map was not refreshing the locations properly when the search tab was selected# fixed layout issues on joomla 3.0
# date was not respecting the format setting on the maps view# fixed a bug with the jomsocial plugin
# some hotspots were not shown on the map and in the menu (bug introduced with the new sorting)
# the check all button in backend was not functioning properly on j3.0# search by street/country/town was not working - thanks to Grazing Cat .Inc for providing us with a fix
# sorting hotspots by name ASC in the menu
# single hotspots was not rendered when ccomment was selected in the options, but it was not actually installed on the user's site
# sql error when hotspots order is set to created time~ the install script not allows the installation only on joomla >= 2.5.6
# userhotspots was not working on joomla 3.0
# the map was missing from "submit-hotspots" view in the frontend on joomla3# readmore was showing in the menu even though "Marker detailpage" was set to no
~ making the links to k2 a little better
~ running the intro text through the code of the SEF plugin
# the search - hotspots plugin was not properly working on joomla 2.5 and 3.0

Continue reading
Rate this blog entry:
0
5569 Hits
0 Comments

JEDchecker 1.3 released

The JEDchecker is now compatible with joomla 3.0 and I've added 1 new check to it. The xmlinfo check will display information about the extension that we are checking. What we currently output is the extension name, version and creation date. The extension name information should help you to fill out the "filename and install as" fields in the JED submission form.

The new download can be found here & is also available through the joomla update manager.

Rate this blog entry:
1
1430 Hits
0 Comments

CTransifex 1.1 released

We've just released a new version of the CTransifex extension. (you can download it here)

In this version we now support the generation of language packs for esperanto. We've also updated the default lang map with mappings for sr@latin, tl_PH. We've also removed mappings for few languages that should not be used such as ar (one should use the ar_AA language team). Because our default mappings had this ar: ar-AA, ar_AA: ar-AA we were generating the same language pack twice. You will need to manually update the options to fix this -> first open the component options and clear all the content from the maping field -> click save. Once it refreshes you'll see that the options have been populated with new content -> click save again. Please also make sure that your tx config doesn't have the same mapping. Generally the rule is -> 1 mapping per unique language.

Continue reading
Rate this blog entry:
1
2412 Hits
0 Comments

The end is not in sight!

According to some fatalists the end of the world is approaching. I don't subscribe to that view* and that is why I thought that it would be nice to reflect on the past year and have a look at what's still way in front of us.

Before I start talking about anything else I want to thank you for being our customer & for being so AWESOME! You are helping us grow not only as a company, but as human beings. Thank you for all the feedback, forum posts, tickets, emails, tweets, calls and whatever!

Continue reading
Rate this blog entry:
2
5625 Hits
1 Comment