Exemple #1
0
 /**
  * @inheritdoc
  */
 public function beforeDelete()
 {
     foreach (Setting::findAll(['space_id' => $this->id]) as $spaceSetting) {
         $spaceSetting->delete();
     }
     foreach ($this->getAvailableModules() as $moduleId => $module) {
         if ($this->isModuleEnabled($moduleId)) {
             $this->disableModule($moduleId);
         }
     }
     Yii::$app->search->delete($this);
     $this->getProfileImage()->delete();
     \humhub\modules\user\models\Follow::deleteAll(['object_id' => $this->id, 'object_model' => 'Space']);
     foreach (Membership::findAll(['space_id' => $this->id]) as $spaceMembership) {
         $spaceMembership->delete();
     }
     \humhub\modules\user\models\Invite::deleteAll(['space_invite_id' => $this->id]);
     // When this workspace is used in a group as default workspace, delete the link
     foreach (\humhub\modules\user\models\Group::findAll(['space_id' => $this->id]) as $group) {
         $group->space_id = "";
         $group->save();
     }
     return parent::beforeDelete();
 }
 /**
  * Returns a List of Users
  */
 public function actionAuthentication()
 {
     $form = new \humhub\modules\admin\models\forms\AuthenticationSettingsForm();
     $form->internalUsersCanInvite = Setting::Get('internalUsersCanInvite', 'authentication_internal');
     $form->internalRequireApprovalAfterRegistration = Setting::Get('needApproval', 'authentication_internal');
     $form->internalAllowAnonymousRegistration = Setting::Get('anonymousRegistration', 'authentication_internal');
     $form->defaultUserGroup = Setting::Get('defaultUserGroup', 'authentication_internal');
     $form->defaultUserIdleTimeoutSec = Setting::Get('defaultUserIdleTimeoutSec', 'authentication_internal');
     $form->allowGuestAccess = Setting::Get('allowGuestAccess', 'authentication_internal');
     $form->defaultUserProfileVisibility = Setting::Get('defaultUserProfileVisibility', 'authentication_internal');
     if ($form->load(Yii::$app->request->post()) && $form->validate()) {
         $form->internalUsersCanInvite = Setting::Set('internalUsersCanInvite', $form->internalUsersCanInvite, 'authentication_internal');
         $form->internalRequireApprovalAfterRegistration = Setting::Set('needApproval', $form->internalRequireApprovalAfterRegistration, 'authentication_internal');
         $form->internalAllowAnonymousRegistration = Setting::Set('anonymousRegistration', $form->internalAllowAnonymousRegistration, 'authentication_internal');
         $form->defaultUserGroup = Setting::Set('defaultUserGroup', $form->defaultUserGroup, 'authentication_internal');
         $form->defaultUserIdleTimeoutSec = Setting::Set('defaultUserIdleTimeoutSec', $form->defaultUserIdleTimeoutSec, 'authentication_internal');
         $form->allowGuestAccess = Setting::Set('allowGuestAccess', $form->allowGuestAccess, 'authentication_internal');
         if (Setting::Get('allowGuestAccess', 'authentication_internal')) {
             $form->defaultUserProfileVisibility = Setting::Set('defaultUserProfileVisibility', $form->defaultUserProfileVisibility, 'authentication_internal');
         }
         // set flash message
         Yii::$app->getSession()->setFlash('data-saved', Yii::t('AdminModule.controllers_SettingController', 'Saved'));
         Yii::$app->response->redirect(Url::toRoute('/admin/setting/authentication'));
     }
     // Build Group Dropdown
     $groups = array();
     $groups[''] = Yii::t('AdminModule.controllers_SettingController', 'None - shows dropdown in user registration.');
     foreach (\humhub\modules\user\models\Group::findAll([]) as $group) {
         $groups[$group->id] = $group->name;
     }
     return $this->render('authentication', array('model' => $form, 'groups' => $groups));
 }