protected function actionVisibleGroupStore($user_id = 0) { $selectedGroupIds = array(); if (empty($user_id)) { $selectedGroupIds = User::getDefaultVisibleGroupIds(); } else { $user = User::model()->findByPk($user_id); $groups = $user->getAcl()->getGroups(); foreach ($groups as $group) { $selectedGroupIds[] = $group->id; } } $columnModel = new \GO\Base\Data\ColumnModel('GO\\Base\\Model\\Group'); $columnModel->formatColumn('selected', 'in_array($model->id, $selectedGroupIds)', array('selectedGroupIds' => $selectedGroupIds)); $columnModel->formatColumn('disabled', '$model->id==GO::config()->group_root'); $store = new \GO\Base\Data\DbStore('GO\\Base\\Model\\Group', $columnModel); $store->defaultSort = array('name'); return $store->getData(); }