Yii : CGridView – Create Custom Column

I have a field which contains one character to represent project status (eg: F=Finished, S=Start, P=Pending, etc)

By default, CGridView will display one character value, but we want CGridView to display its description taken from other table, this is what I did:

First, create a component, let’s name it MyComponent. You can do it by create MyComponent.php and save it in component folder, I write something like this:

class MyComponent extends CApplicationComponent 
 public function getProjectStatus($statusCode)

 $rs = Yii::app()->db->createCommand($sql)->queryAll();

 $data = array();

 foreach($rs as $item){

 $statusCode = $item['STATUS_CODE'];
 $description = $item['DESCRIPTION'];

 $data[$statusCode] = $description;
 return $data[$statusCode]; 

This way, you can call the function like this

Then, replace the field name in your views (admin.php) with something like this

array('header' => 'Project Status', 'value' => 'Yii::app()->mycomponent->getProjectStatus($data->PROJECT_STATUS)'),

Some people suggest the function should be static

Yii version: 1.1.10

jQuery : Select All Checkbox

Yahoo! Mail and GMail both has a checkbox on top of their email list which will “checked” all chekboxes when clicked. Previously I use plain old javascript like those in this link, I just try to use jQuery to do this, its only 5 lines

        this.checked = event.target.checked;

Android Studio Error on First Run (Windows)

After installing Android Studio on my new laptop and then running it for the first time, it throw a dialog box detailing error messages, a quick search on Google point me to this link Issue 172032: Android Studio Start failed with internal error and the “temporary solution” is simple, just edit idea.properties file located in

C:\Program Files\Android\Android Studio\bin\

then add this text


and save, then try to relaunch Android Studio, it works like a charm 🙂

Note: editing idea.properties file required Administrator privileges so you maybe need to launch your editor as Administrator