Hi all,
I’m quite new to yii, but so long I’ve gotten along. My problem now is, that I have to sort the ip address in admin view. For index view I applied the “inet_aton()”-Function to CActiveDataProvider. But how can I manage that for a model in admin view?
Any hints, tipps, etc. are highly appreciated.
Thorsten
Source:
// actionAdmin
public function actionAdmin()
{
$auth_user = gdb_user::model()->findbyPk(Yii::app()->user->id);
$model=new gdb_host('search');
if(isset($_GET['gdb_host']))
$model->attributes=$_GET['gdb_host'];
$this->render('admin',array(
'model'=>$model,
'auth_user'=>$auth_user,
));
}
// admin view
<?php
if($model) {
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'gdb-host-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'gdb_hostname',
'gdb_ipaddress',
'gdb_macaddress',
array(
'name'=>'gdb_location',
'value'=>'$data->getLocationById()',
),
array(
'name'=>'gdb_orgeinheitid',
'value'=>'(gdb_orgeinheit::model()->findByPk($data->gdb_orgeinheitid) != "") ? gdb_orgeinheit::model()->findByPk($data->gdb_orgeinheitid)->gdb_name : "Nicht zugewiesen"',
),
array(
'name'=>'gdb_purchasedate',
'value'=>'($data->gdb_purchasedate == "0000-00-00") ? "Nicht gesetzt" : strftime("%d.%m.%Y", strtotime($data->gdb_purchasedate))',
),
array(
'name'=>'gdb_sync_yn',
'value'=>'($data->gdb_sync_yn == 1) ? "Ja" : "Nein"',
),
array(
'name'=>'gdb_sync_action',
'value'=>'($data->gdb_sync_action == 0) ? "Eintragung" : (($data->gdb_sync_action == 1) ? "Änderung" : "Löschung")',
),
array(
'name'=>'gdb_adminid',
'value'=>'(gdb_user::model()->findByPk($data->gdb_adminid) != "") ? gdb_user::model()->findByPk($data->gdb_adminid)->gdb_login : "Nicht zugewiesen"',
),
array(
'class'=>'CButtonColumn',
),
),
));
}
?>