Category Archives: Joomla

myView: Free open source is not really free. It’s expensive!

Free Open Source is not really Free

Free Open Source is not really Free

So here’s another story that I wanted to share with fellow freelancers and my clients on how expensive so called “free” open source software can get.
This incident occurred a couple of times but only today that I realize how much expensive the open source bang wagon could be. You can call me a tube light for realizing this so late.
I worked on a Joomla 1.0.x (open source and quite an established php cms software) based project a year back for a niche community of houseboaters. We spent weeks configuring the site to make it work the way my client wanted. Adding new components, creating new components, complex customizations, design, SEO, templating, etc. etc. and it all looked good at the end. The client was very pleased and so was I for what I have created out of Joomla.

It all went fine until yesterday when the site got hacked and Google kicked it out of its search results. The traffic went down drastically leaving nothing but few thousand users. Turns out that my client wasn’t really paying attention to the growing security concerns of Joomla nor was he really interested in upgrading the scripts to the latest version. Anyways, I had to act quickly and figure out the best possible way of getting the site back on Google and make the site secure once again.
I spent one whole night researching and trying to figure out the problem.. finally I found the malicious code and removed it. You can read it here.
After getting it back on Google, our challenge was to make it secure. And the only way to do that was to upgrade to the latest version of Joomla and all the components, customizations etc.
The site has grown exponentially over the year and with so much customization, it has become quite difficult to bulk upgrade the site. Now the whole upgrade project costs almost same as getting a new site.
The point here is, although free open source software comes for free, you still need to shell out quite good amount of money to make it work the way you want. Plus, maintenance and regular monitoring is essential. This hidden cost of maintenance and upgrades could hurt your business model. So, make sure to include it.
Freelancers, a tip for you would be to explain the hidden costs to your clients and sign them for a maintenance contract!

About myView: myViews are totally my point of view of things I see in the industry. Could be a good analysis or just stupidity.

Google marked the site as malware

My client reported to me that his Joomla site has been marked as malware by Google and in Firefox and Chrome the users are alerted to avoid visiting the site. At first I assumed someone might have flagged the site as malware just to have fun or out of curiosity. But I still went ahead and did my little detective work and learned that a malicious user might actually have posted something creepy in the forums or in comments. After regorus searching through the database for scripts for hours I couldn’t come up with any. Then I researched a little more about the problem and learned that hackers are finding ways of inserting an iframe content on popular cmses like joomla, wordpress and drupal with ease. So my next step was to download the whole site on my local computer and do full directory scan for keyword “iframe”. Turns out, there where plenty of instances, most of them were pure hidden iframes to some malicious urls.

One at a time I removed them and then uploaded the files back. I then requested a review in Google Webmaster Tools and the next day… voila… the site was back normal.

The lesson I learned was to insist my clients to keep their sites up to date on software upgrades and backup daily.

At the end I felt quite happy to knock this one down.

MyBlog Posts based on Keywords

myblog_jreviews_joomla.PNG

Put this module anywhere, it will automatically detect the jreviews tags, review name or provided keywords (no need for jreviews with this option) and display latest related MyBlog posts.

Tested on Joomla 1.5.x, JReviews 2.0.4 RC3 and MyBlog 2.0.1 build286

See it in action here. ‘Related blogs’ display latest related posts based on iPhone.

Download: MyBlog Keyword Posts

Project funded by: Matt

Mod: Fireboard Latest Posts based on Searched Keywords

This mod was only tested on Joomla 1.5.

Description: Displays latest posts based on provided keywords in the backend. See screenshots to get an idea.

Version: 1.0 Beta

Detail Desription: Well, this module lets you search through your fireboard forum based on couple of keywords and display the results in a nice, cleaner module format. You can create unlimited content items right off with your forum posts. Its highly configurable and easy to install.

Installation: Just like any other module. If you need help, ping me or add a comment.

Download Now: Fireboard Keywords Posts Module

Continue reading

Block direct access to pligg pages

To block direct access to your pligg pages (which are residing inside Joomla Wrapper), use the following code.
In the pligg directory, create (or append if already exists) a .htaccess file and add the following code.

RewriteEngine On

# Blocking direct access
RewriteCond %{HTTP_REFERER} !^http://www.yourjoomlasite.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://yourjoomlsite.com/.*$ [NC]
RewriteCond %{REQUEST_URI} pliggdir [NC]
RewriteRule .* – [F]

JPligger 1.2 (Joomla 1.5 and Pligg 9.9 Integration)

Current Version: 1.2 Beta

License: GPL

Description: This mambot will sync Joomla 1.5 and Pligg 9.9 login with ease.

Looking for JPligger for Joomla 1.0.x and Pligg 9.8? See here.

Tested on: Joomla 1.5.2; Pligg 9.9.0
Note : CB is not required for this plugin to work

Detail Description: This plugin will allow you to run Pligg inside Joomla using Wrapper. It will sync user registration, login and forgot password between Joomla, CB and Pligg.

Support: Community Driven and If I find time.

Ideal Installation:

  • Use at your own risk! Backup first or use in test environment first.
  • Install Joomla in root folder
  • Install Pligg in /
  • Note DB settings of Pligg
  • Install JPligger Plugin in Joomla
  • Visit its settings
  • Provide details of Pligg DB
  • Publish and Save
  • Hide Registration through Pligg. Instructions here: hide-pligg-registration.txt

Optional Information: Pligg inside Joomla wrapper view instructions here.

Download JPligger 1.2 Plugin

This project was funded by Guillermo Moreno

JPligger – Joomla & Pligg Integration Mambot

Current Version: 1.0 Beta

License: GPL

Description: This mambot will sync Joomla and Pligg login with ease.

Tested on: Joomla 1.0.13; CB 1.1; Pligg 9.8.2

Looking for JPligger for Joomla 1.5 and Pligg 9.9? See here.
Note : CB is not required for this mambot to work

Detail Description: This mambot will allow you to run Pligg inside Joomla using Wrapper. It will sync user registration, login and forgot password between Joomla, CB and Pligg.

Support: Community Driven and If I find time.

Ideal Installation:

  • Use at your own risk! Backup first or use in test environment first.
  • Install Joomla in root folder
  • Install Pligg in /
  • Note DB settings of Pligg
  • Install JPligger Mambot in Joomla
  • Visit its settings (In admin > Mambots > JPligger)
  • Provide details of Pligg DB
  • Publish and Save
  • Hide Registration through Pligg. Instructions here: hide-pligg-registration.txt

Optional Information: Pligg inside Joomla wrapper

  • Link your Pligg in Joomla wrapper
  • Use on / in Wrapper Link Field
  • Set width and height to 100%, no scrollbar, yes to auto height.
  • Remove Pligg Header. Edit //templates//header.tpl (Remove as much as you can. Trail and Error)
  • Remove Pligg Footer. Edit //templates//footer.tpl (Remove as much as you can. Trail and Error)
  • Remove unwanted Siderbar modules. Edit //templates//sidebar.tpl (Remove Login/Registration Module and others as much as you can. Trail and Error)
  • Fit Pligg into wrapper:
    Edit CSS file of your Pligg template
    Find Contentbox and edit its width, find Sidebox and edit its width, find Wrap and edit its width
    Note: Depending on your joomla template width, set wrap width to max. Then split the max width between Contentbox and Sidebox. Also remember that there is padding in between so take that into account as well.
  • Thats all you need but if you want to dig down and integrate fully, there are more things that can be done.

Download JPligger Mambot

Download JPligger Plugin for Joomla 1.5 and Pligg 9.9 here.

PonyGallery Category Photos View (English)

This is a modification to PonyGallery ML 2.5.1’s exclusive module Modul PonyImages Version 1.0.4

This is its translation in English. If you are looking to download PonyGallery ML, please visit here.

I’ve spent hours translating this great module in English. You may download it ponyimage in english.

Pligg – Joomla Integration Project

pligg joomla After my endless search for Pligg’s integration with Joomla, I have decided to work on it myself. For the simplicity of this project, I have very basic requirements. Later on, I plan to take this integration to the next level.

Requirements:

– Pligg included in Joomla CMS using Wrapper Module
– Common user login interface for Pligg + Joomla + Community Builder (CB)
– Common user registration system for Pligg + Joomla + Community Builder

I am assuming this project will take about one month to complete. If you have any ideas, you are most welcome to contribute.

I will update this post once I have updates for all.

Update: Project is now in Beta and can be downloaded from here: JPligger – Joomla and Pligg Integration

Joomla Custom Form

Ever thought about building a simple app in your Joomla website to allow certain calculation or a simple contact us form or a complex application form? I worked on a school website a year ago on Joomla and the other day I got a call from the client for a web based application form for the school. To keep things in short, these were the requirements of the project:

  1. Online application form embedded in site with current design and style
  2. Process required fields and reduce spam
  3. Email results to site admin and CC a copy to applicant
  4. Store Results in database and be able to export in excel sheet

With all the requirements in mind, I started researching on available Joomla components and also ways of getting it done manually (without any extensions). I ended up testing almost every Form Component and thought it would make some sense to put a report on vaked! So here it is, a short report on all the major Form Components for Joomla. BTW, I went with ChronoForms for this project.