/** * update fileserver/internet access * * @param array $ids * @param string $type * @param boolean $access * @return array */ public function updateAccess($ids, $type, $access) { $result = FALSE; $allowedTypes = array('internet', 'fileserver'); if (in_array($type, $allowedTypes)) { foreach ($ids as $courseId) { $course = $this->_controller->get($courseId); $members = $this->_groupController->getGroupMembers($course->group_id); // update course and groups $this->_manageAccessGroups($members, $access, $type); $course->{$type} = $access; $course = $this->_controller->update($course); } $result = TRUE; } return array('status' => $result ? 'success' : 'failure'); }
/** * import course members * * @param string $tempFileId * @param string $courseId * @return array */ public function importMembers($tempFileId, $courseId) { $this->checkRight(Courses_Acl_Rights::ADD_NEW_USER); $tempFile = Tinebase_TempFile::getInstance()->getTempFile($tempFileId); // get definition and start import with admin user import csv plugin $definitionName = $this->_config->get(Courses_Config::STUDENTS_IMPORT_DEFINITION, 'admin_user_import_csv'); if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) { Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' Using import definition: ' . $definitionName); } $definition = Tinebase_ImportExportDefinition::getInstance()->getByName($definitionName); $course = $this->get($courseId); // check if group exists, too $group = $this->_groupController->get($course->group_id); $importer = Admin_Import_User_Csv::createFromDefinition($definition, $this->_getNewUserConfig($course)); $result = $importer->importFile($tempFile->path); $groupMembers = $this->_groupController->getGroupMembers($course->group_id); $this->_manageAccessGroups($groupMembers, $course); $this->_addToStudentGroup($groupMembers); return $result; }