Cgridview Dengan Kondisi

para master yii…mau tanya dong.saya punya tabel naskah dan status.bentuk tabelnya begini

tabel NASKAH :

no | id naskah |jenis | status inbox |

tabel STATUS :

id | status | kode | tipe

1 Sudah Dibaca 1 Status Inbox

2 Belum Dibaca 2 Status Inbox

3 Sudah Dilaksanakan 3 Status Sent

4 Belum Dilaksanakan 4 Status Sent

field status inbox yang ada di tabel NASKAH diambil dari tabel STATUS.saya sudah berhasil menampilkan tabel naskah dengan cgridview.tapi saya ingin menampilkan tabel naskah dengan cgridview tapi dengan kondisi :

  • jika status belum terbaca maka warna text ‘belum dibaca’ di field berwarna merah dan jika sudah dibaca maka warna text normal.

Saya bingung bagaimana logika kodingnya dan harus diletakkan dimana?? mohon bantuannya buat para master sekalian.terimakasih kalo mau menjawab :)

Sekedar ide, gan: mungkin bisa memanfaatkan properti cssClassExpression khusus untuk kolom statusnya? Jadi untuk status yang belum terbaca, tinggal set ke class CSS yang warnanya merah.

maap gan ane newbie banget gan…bisa minta contoh penggunaan cssClassExpressionnya nggak gan? ane bikin kayak gini tapi nggak ngaruh gan :




array(

			'header'=>'Status Inbox',

			'type'=>'raw',

			'value'=>'$data->statInbox->nama',

			'cssClassExpression' => '$data["stat_inbox"] == "2" ? "red" : ""',

			'filter'=>CHtml::activeTextField($model, 'statInbox'),

		  ),



Field stat_inbox itu isinya string (bukan integer), gan? Trus itu kelas ‘red’ untuk CSS-nya udah dibuat?

Contoh penggunaan:




array(

   'header'=>'Store',

   'name'=>'store_id',

   'cssClassExpression'=>'($data->store_id == 1) ? "red" : ""',

),   



Kelas CSS untuk red (bisa dimodifikasi sesuai kebutuhan):




td.red

{

    color: red;

}



Ane barusan tes sih bisa, gan. Silaken dicoba dulu. :D

well done…thanks agan rei yang baik hati dan tidak sombong :D