register_posted_variables(array('title' => true, 'password' => true, 'prof_names' => true)); if (empty($prof_names)) { $prof_names = "$_SESSION[givenname] $_SESSION[surname]"; } // departments and validation $allow_only_defaults = get_config('restrict_teacher_owndep') && !$is_admin; $allowables = array(); if ($allow_only_defaults) { // Method: getDepartmentIdsAllowedForCourseCreation // fetches only specific tree nodes, not their sub-children //$user->getDepartmentIdsAllowedForCourseCreation($uid); // the code below searches for the allow_course flag in the user's department subtrees $userdeps = $user->getDepartmentIds($uid); $subs = $tree->buildSubtreesFull($userdeps); foreach ($subs as $node) { if (intval($node->allow_course) === 1) { $allowables[] = $node->id; } } } $departments = isset($_POST['department']) ? $_POST['department'] : array(); $deps_valid = true; foreach ($departments as $dep) { if ($allow_only_defaults && !in_array($dep, $allowables)) { $deps_valid = false; break; } }