[Solved]Different View (On Actionindex) Depending On User's Role

I’m a beginner in Yii Framework, and I have a problem I can’t fix. I have this in my class controller :


public function actionIndex()

{

  $dataProvider=new CActiveDataProvider('Absence');

  $this->render('index',array(

    'dataProvider'=>$dataProvider,

  ));

}

That gives me a list of all ‘absence’.

4981

absence.bmp

In my case, ‘erty’ is logged in and sees a list of every absence. But, with his role, stored in my user’s table, I want him to see only a list of absences with his ‘Collaborateur alias’. Can someone helps me with it ?

Moved from Bug Discussions to General Discussion for Yii 1.1.x.

I solved my problem, now actionIndex is like that:


public function actionIndex()

        {

                if ( (Yii::app()->user->getState('roles') === 'user') )

                {

                        $criteria=new CDbCriteria;

                        $criteria->compare('collaborateur_alias', Yii::app()->user->id );

                        $dataProvider=new CActiveDataProvider('Absence', array( 'criteria'=>$criteria));

                        $this->render('index',array(

                                'criteria'=>$criteria,

                                'dataProvider'=>$dataProvider,

                        ));

                }

                else

                {

                        $dataProvider=new CActiveDataProvider('Absence');

                        $this->render('index',array(

                                'dataProvider'=>$dataProvider,

                        ));

                }

        }

If the logged in user have a ‘user’ for role, he only sees a list of his absences.