[ASK] Mengatur Hak Akses User terhadap Model Tertentu

Permisi agan2 Yii sekalian, saya mau nanya lagi ni.

Begini, saya membuat validasi pada satu model tertentu, dimana model tersebut tidak bisa diakses selain user yang mempunyai kode wilayah yang sama.

Validasi yang saya buat :




            public function CekWilayah($attribute,$params)

	       {

		$subject=substr($attribute,0,2);

		$pattern=user::model()->kode_wil;

		if ($subject!==$pattern)

		{

			$this->addError($attribute, $params['message']);

			return false;

		}

	}



Nah, pertanyaannya jika si Admin tidak memiliki pada kode_wil yang sama, bagamaina caranya agar Admin tetap bisa mengaksesnya?

Makasih.

jika admin adalah dari karyawan dan kedepannya memungkinkan terjadi perubahan admin klo saya sih pasti tambah table baru.

tbl_area_privilage

==================

id

user(nik)

area

read_access (misal : beri nilai 1 untuk true , 0 untuk false)

write_access (misal : beri nilai 1 untuk true , 0 untuk false)

nah itu nik / id_user di cek areanya. terus di cek hak nya. cuma bisa baca atau cuma bisa nulis atau bisa baca dan tulis. dan itu berlaku untuk siapapun yang masuk.

eh btw itu satu model apa semuanya yang di cek?. ^_^

Kenapa ga coba pake metode Role-Base Access Controll yg dah disediain sama class CAuthManager-nya yii ? Kebtulan ane lagi bljar ini.

kalo gak salah pake ini aja gan

public function CekWilayah($attribute,$params)

           {


            $subject=substr($attribute,0,2);


            $pattern=user::model()->kode_wil;


            if ($subject!==$pattern)


            {


                    $this->addError($attribute, $params['message']);


                    return false;


            }


            $admin = Yii::app()->user->id == 10000 //id admin


            if ($subject==$pattern or $admin){


                     return true;


             }


    }