function get_group_courseware($group_id = null) { if (!$group_id) { global $bp; $group_id = $bp->groups->current_group->id; } $group_data['bibliography'] = array(); $group_data['responses_count'] = 0; $group_data['assignment_topics_count'] = 0; $group_data['user_grades'] = array(); $group_data['courses'] = (array) BPSP_Courses::has_courses($group_id); $group_data['assignments'] = (array) BPSP_Assignments::has_assignments($group_id); $group_data['schedules'] = BPSP_Schedules::has_schedules($group_id); $posts = array_merge($group_data['courses'], $group_data['assignments']); if ($posts) { foreach ($posts as &$post) { // Get group bibs $group_data['bibliography'] = array_merge($group_data['bibliography'], BPSP_Bibliography::get_bibs($post->ID)); // Get group responses if ($post->post_type == 'assignment') { // Forum threads if (get_post_meta($post->ID, 'topic_link', true) != '') { $group_data['assignment_topics_count'] += 1; } // Responses $post->responses = get_children(array('post_parent' => $post->ID, 'post_type' => 'response')); $group_data['responses_count'] += count($post->responses); // Gradebook $group_data['user_grades'][] = BPSP_Gradebook::load_grade_by_user_id($post->ID, $bp->loggedin_user->id); } } } $group_data['bibliography_count'] = count($group_data['bibliography']); return $group_data; }
/** * Register post types and taxonomies */ function bpsp_registration() { BPSP_Courses::register_post_types(); BPSP_Assignments::register_post_types(); BPSP_Responses::register_post_types(); BPSP_Gradebook::register_post_types(); BPSP_Bibliography::register_post_types(); BPSP_Schedules::register_post_types(); }