Display Status image on CGridView column

You are viewing revision #4 of this wiki article.
This version may not be up to date with the latest version.
You may want to view the differences to the latest version.

next (#5) »

How to display status image on admingridview.

First you can create the UtilityHtml.php file in componet folder.(Otherwise which call a common file)

put the below function in UtilityHtml.php file

public static function getImagetitle($status) {
        if ($status == 1) {
            return 'Active';
        } else if ($status == 0) {
            return 'Inactive';
        }
    }
public static function getStatusImage($status) {

        if ($status == 1 || strtolower($status) == 'yes') {
            return Yii::app()->request->baseUrl . '/images/checked.png';
        } else {
            return Yii::app()->request->baseUrl . '/images/unchecked.png';
        }
    }


and display the grid view on admin.php file

array(
            'name' => 'is_active',
            'filter' => array('1' => 'Active', '0' => 'Inactive'),
            'type' => 'html',
            'value' => 'CHtml::tag("div",  array("style"=>"text-align: center" ) , CHtml::tag("img", array( "title"=>UtilityHtml::getImagetitle(GxHtml::valueEx($data, \'is_active\')),"src" => UtilityHtml::getStatusImage(GxHtml::valueEx($data, \'is_active\')))))',
            'htmlOptions' => array('width'=>"80px")
),