public function actionImport() { $file = $_FILES['file']; $kv = new KeyValues('Groups'); $kv->load($file['tmp_name']); foreach ($kv as $name => $data) { $server_group = new SBServerGroup(); $server_group->name = $name; $server_group->flags = isset($data['flags']) ? $data['flags'] : ''; $server_group->immunity = isset($data['immunity']) ? $data['immunity'] : 0; $server_group->save(); if (isset($data['Overrides'])) { foreach ($data['Overrides'] as $name => $access) { // Parse name if ($name[0] == ':') { $type = 'group'; $name = substr($name, 1); } else { $type = 'command'; } $override = new SBServerGroupOverride(); $override->group_id = $server_group->id; $override->type = $type; $override->name = $name; $override->access = $access; $override->save(); } } } SourceBans::log('Groups imported', 'Groups imported from ' . $file['name']); Yii::app()->user->setFlash('success', Yii::t('sourcebans', 'Imported successfully')); $this->redirect(array('admin/groups')); }