/** * @todo Document this function * @global object * @global object * @return void */ function quora_print_posts_nested($course, &$cm, $quora, $discussion, $parent, $is_assessed, $reply, $quoratracked, $posts) { global $USER, $CFG, $DB; $link = false; if (!empty($posts[$parent->id]->children)) { $posts = $posts[$parent->id]->children; //NighCool make the replys of the firstpost sorted by the number of assessments if ($parent->id == $discussion->firstpost) { $assess = array(); foreach ($posts as $post) { $assess[$post->id] = count($DB->get_records('quora_post_assessments', array('post' => $post->id))); } arsort($assess); $keys = array_keys($assess); $new_posts = array(); foreach ($keys as $key) { $new_posts[$key] =& $posts[$key]; } $posts = $new_posts; } foreach ($posts as $post) { echo '<div class="indent">'; if (!isloggedin()) { $ownpost = false; } else { $ownpost = $USER->id == $post->userid; } $post->subject = format_string($post->subject); $postread = !empty($post->postread); quora_print_post($post, $discussion, $quora, $cm, $course, $is_assessed, $ownpost, $reply, $link, '', '', $postread, true, $quoratracked); quora_print_posts_nested($course, $cm, $quora, $discussion, $post, $is_assessed, $reply, $quoratracked, $posts); echo "</div>\n"; } } }
quora_set_return(); $PAGE->navbar->add(get_string('delete', 'quora')); $PAGE->set_title($course->shortname); $PAGE->set_heading($course->fullname); if ($replycount) { if (!has_capability('mod/quora:deleteanypost', $modcontext)) { print_error("couldnotdeletereplies", "quora", quora_go_back_to("discuss.php?d={$post->discussion}")); } echo $OUTPUT->header(); echo $OUTPUT->heading(format_string($quora->name), 2); echo $OUTPUT->confirm(get_string("deletesureplural", "quora", $replycount + 1), "post.php?delete={$delete}&confirm={$delete}", $CFG->wwwroot . '/mod/quora/discuss.php?d=' . $post->discussion . '#p' . $post->id); quora_print_post($post, $discussion, $quora, $cm, $course, false, false, false); if (empty($post->edit)) { $quoratracked = quora_tp_is_tracked($quora); $posts = quora_get_all_discussion_posts($discussion->id, "created ASC", $quoratracked); quora_print_posts_nested($course, $cm, $quora, $discussion, $post, false, false, $quoratracked, $posts); } } else { echo $OUTPUT->header(); echo $OUTPUT->heading(format_string($quora->name), 2); echo $OUTPUT->confirm(get_string("deletesure", "quora", $replycount), "post.php?delete={$delete}&confirm={$delete}", $CFG->wwwroot . '/mod/quora/discuss.php?d=' . $post->discussion . '#p' . $post->id); quora_print_post($post, $discussion, $quora, $cm, $course, false, false, false); } } echo $OUTPUT->footer(); die; } else { if (!empty($prune)) { // Pruning if (!($post = quora_get_post_full($prune))) { print_error('invalidpostid', 'quora');