function get_subtree_seminar_count($sem_tree_id, $only_visible = true) { $db = DBManager::get(); $subtree_entries = StudipLectureTreeHelper::get_subtree($sem_tree_id); $subtree_entries = array_map(array($db, 'quote'), $subtree_entries); $stmt = $db->prepare('SELECT COUNT(sst.seminar_id) AS seminar_count FROM seminar_sem_tree sst JOIN seminare s ON sst.seminar_id = s.Seminar_id WHERE sst.sem_tree_id IN (' . join(',', $subtree_entries) . ')' . ($only_visible ? ' AND s.visible = 1' : '')); $stmt->execute(); return $stmt->fetchColumn(); }
function get_seminars_by_sem_tree_id_action($api_key, $sem_tree_id, $term_id) { $seminar_infos = array(); $seminar_ids = StudipLectureTreeHelper::get_seminars_by_sem_tree_id($sem_tree_id, $term_id); foreach ($seminar_ids as $seminar_id) { $sem_obj = new Seminar($seminar_id['seminar_id']); $lecturers = StudipSeminarHelper::get_participants($seminar_id['seminar_id'], 'dozent'); foreach ($lecturers as $lecturer) { $lecturers[] = Studip_User::find_by_user_name($lecturer); } $seminar_info = new Studip_Seminar_Info(); $seminar_info->title = $sem_obj->getName(); $seminar_info->lecturers = $lecturers; $seminar_info->turnus = $sem_obj->getDatesTemplate('dates/seminar_export', array('semester_id' => $term_id)); $seminar_info->lecture_number = $sem_obj->seminar_number; $seminar_infos[] = $seminar_info; } return $seminar_infos; }