/** * Deletes a group * * On deletion all group members will be moved to another group. */ public function actionDelete() { $group = Group::findOne(['id' => Yii::$app->request->get('id')]); if ($group == null) { throw new \yii\web\HttpException(404, Yii::t('AdminModule.controllers_GroupController', 'Group not found!')); } $model = new \humhub\modules\admin\models\forms\AdminDeleteGroupForm(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { foreach (User::findAll(['group_id' => $group->id]) as $user) { $user->group_id = $model->group_id; $user->save(); } $group->delete(); $this->redirect(Url::toRoute("/admin/group")); } $alternativeGroups = \yii\helpers\ArrayHelper::map(Group::find()->where('id != :id', array(':id' => $group->id))->all(), 'id', 'name'); return $this->render('delete', array('group' => $group, 'model' => $model, 'alternativeGroups' => $alternativeGroups)); }