How to install SmartOptimizer on Drupal

Since there were many requests on how to install SmartOptimizer on Drupal, I decided to write this how-to here.
Just follow these simple steps:

  1. Place smartoptimizer folder inside the folder that your drupal is installed.
  2. "smartoptimizer/cache" folder should be writable (in most cases 777 permission is needed).
  3. Copy content of SmartOptimizer htaccess file and paste it inside Drupal htaccess before drupal rewrite rules. (click here to see Drupal 6.2 htaccess file after modification)
  4. It's ready. Enjoy it.

Using YSlow my website performance grade before installing SmartOptimizer was D(66) and now after installing SmartOptimizer is C(79).

JalaliJSCalendar v1.1 beta released

As the subject says, JalaliJSCalendar v1.1 beta released.
Some methods added to Calendar object to handle the calendar dynamically.
Calendar direction can be defined in language files.
Another change is the new dynamic example that is added to the package.
And also two minor bugs fixed in this release.

For more information see the project page.

JalaliJSCalendar v1.0 beta released

I just want to announce the first release of my new project "JalaliJSCalendar" that is a JavaScript DHTML Calendar based on "Dynarch DHTML Calendar" from "Mihai Bazon".
The main difference between two is that JalaliJSCalendar supports Persian Jalali Calendar too, that is the official iranian calendar.

SmartOptimizer v1.5 beta released

After about 2 years from previous release of JSmart, I wrote a new fresh and restructured version of JSmart and renamed it to SmartOptimizer because the old name was not so meaningful for such a tool.
At first JSmart was only a JavaScript minifier and compressor, but now SmartOptimizer is a front end optimizer based on yahoo performance rules that supports a variety range of file formats.

With SmartOptimizer you can easily implement the following yahoo rules in your website:

  • Make Fewer HTTP Requests using concatenation feature of SmartOptimizer.
  • Add an Expires or a Cache-Control Header
    SmartOptimizer can optionally generate far future Expires header for all static requests.
  • Configure ETags
    SmartOptimizer removes Etag header from static requests.
    However this option is useful for a large scale website that uses multiple servers or a CDN to host content across the world.
  • Gzip Components
    SmartOptimizer compresses automatically all the formats that have a considerable compression ratio like js, css, html, txt and avoids compressing formats like jpeg and swf that are internally compressed.
  • Minify JavaScript and CSS
    SmartOptimizer has an internal JavaScript and CSS minifier. Also, new minifiers can be defined for other file types.

SmartOptimizer is in beta stage and needs a large scale testing specially for minifying feature. So any feedback is greatly appreciated.

For more information see the project page.

UTF8 in JavaScript with a new trick

Previously I had implemented UTF8 Conversion methods in javascript that you can find it here.
Now I have Just found a new simple way for UTF8 encoding/decoding in JavaScript that seems works well in all the browsers.

function UTF8Encode(str) {
	return unescape(encodeURIComponent(str));
}
 
function UTF8Decode(str) {
	return decodeURIComponent(escape(str));
}

New Website

I have just launched my new website using Drupal, an open source CMS.

After being a web developer for about 4 years I finally started a poor static html website for myself, that was the previous version of this site.
One day, one of my friends asked me about the poor website with no updates and my answer was obvious, there is a persian adage that says "the potter drinks water from a broken jug" .

I am too busy and I don't have many spare times to update my website regularly, and since updating a CMS is more easier and faster than a static html site, finally I decided to choose a CMS for the site, and after trying some of them I find Drupal the best choice to fit my needs.

Thanks Drupal guys for the excellent work.

Syndicate content