/** * 新加入一个用户 * @param unknown_type $userId */ public function addMember($userId, $roles = array()) { $owner = $this->getOwner(); $member = GroupMember::model()->findByAttributes(array('memberableEntityId' => $owner->entityId, 'userId' => $userId)); if (!$roles) { $roles = $this->getDefaultRoles(); } if (!$member) { //插入一条新数据 $member = new GroupMember(); $member->userId = $userId; $member->memberableEntityId = $owner->entityId; $member->addTime = time(); $member->setArrRoles($roles); $result = $member->save(); $this->onAdded(new CEvent()); return $result; } return false; }
/** * 创建小组页面和处理 */ public function actionCreate() { $model = new Group(); if (isset($_POST['Group'])) { $model->attributes = $_POST['Group']; $model->addTime = time(); $model->userId = Yii::app()->user->id; $model->status = "apply"; if ($model->save()) { // $model->addMember(Yii::app()->user->id,array('superAdmin')); $member = new GroupMember(); $member->groupId = $model->id; $member->userId = Yii::app()->user->id; $member->setArrRoles(array('superAdmin')); $member->save(); $admins = UserInfo::getAllAdmins(); foreach ($admins as $user) { Notice::send($user->id, 'group_apply', array('groupId' => $model->getPrimaryKey())); } Yii::app()->user->setFlash('success', '申请已提交,请继续完善小组资料'); $this->redirect(array('view', 'id' => $model->id)); } } $user = UserInfo::model()->findByPk(Yii::app()->user->id); $this->render('create', array('model' => $model, 'user' => $user)); }