Merge branch 'MDL-51253_forum_urls' of git://github.com/BenKelada/moodle

This commit is contained in:
David Monllao 2015-09-14 13:06:38 +08:00
commit 14face570f
5 changed files with 22 additions and 24 deletions

View File

@ -201,7 +201,7 @@ if (!is_null($subscribe)) {
}
}
}
$returnto = forum_go_back_to("index.php?id=$course->id");
$returnto = forum_go_back_to(new moodle_url('/mod/forum/index.php', array('id' => $course->id)));
$shortname = format_string($course->shortname, true, array('context' => context_course::instance($course->id)));
if ($subscribe) {
redirect($returnto, get_string('nowallsubscribed', 'forum', $shortname), 1);

View File

@ -3992,7 +3992,7 @@ function forum_set_return() {
/**
* @global object
* @param string $default
* @param string|\moodle_url $default
* @return string
*/
function forum_go_back_to($default) {

View File

@ -57,9 +57,9 @@ $user = $USER;
require_login($course, false, $cm);
if ($returnpage == 'index.php') {
$returnto = forum_go_back_to($returnpage.'?id='.$course->id);
$returnto = forum_go_back_to(new moodle_url("/mod/forum/$returnpage", array('id' => $course->id)));
} else {
$returnto = forum_go_back_to($returnpage.'?f='.$forum->id);
$returnto = forum_go_back_to(new moodle_url("/mod/forum/$returnpage", array('f' => $forum->id)));
}
if (isguestuser()) { // Guests can't change forum

View File

@ -319,22 +319,22 @@ if (!empty($forum)) { // User is starting a new discussion in a forum
$timepassed = time() - $post->created;
if (($timepassed > $CFG->maxeditingtime) && !has_capability('mod/forum:deleteanypost', $modcontext)) {
print_error("cannotdeletepost", "forum",
forum_go_back_to("discuss.php?d=$post->discussion"));
forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $post->discussion))));
}
if ($post->totalscore) {
notice(get_string('couldnotdeleteratings', 'rating'),
forum_go_back_to("discuss.php?d=$post->discussion"));
forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $post->discussion))));
} else if ($replycount && !has_capability('mod/forum:deleteanypost', $modcontext)) {
print_error("couldnotdeletereplies", "forum",
forum_go_back_to("discuss.php?d=$post->discussion"));
forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $post->discussion))));
} else {
if (! $post->parent) { // post is a discussion topic as well, so delete discussion
if ($forum->type == 'single') {
notice("Sorry, but you are not allowed to delete that discussion!",
forum_go_back_to("discuss.php?d=$post->discussion"));
forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $post->discussion))));
}
forum_delete_discussion($discussion, false, $course, $cm, $forum);
@ -359,9 +359,9 @@ if (!empty($forum)) { // User is starting a new discussion in a forum
// Single discussion forums are an exception. We show
// the forum itself since it only has one discussion
// thread.
$discussionurl = "view.php?f=$forum->id";
$discussionurl = new moodle_url("/mod/forum/view.php", array('f' => $forum->id));
} else {
$discussionurl = "discuss.php?d=$post->discussion";
$discussionurl = new moodle_url("/mod/forum/discuss.php", array('d' => $discussion->id));
}
$params = array(
@ -399,7 +399,7 @@ if (!empty($forum)) { // User is starting a new discussion in a forum
if ($replycount) {
if (!has_capability('mod/forum:deleteanypost', $modcontext)) {
print_error("couldnotdeletereplies", "forum",
forum_go_back_to("discuss.php?d=$post->discussion"));
forum_go_back_to(new moodle_url('/mod/forum/discuss.php', array('d' => $post->discussion), 'p'.$post->id)));
}
echo $OUTPUT->header();
echo $OUTPUT->heading(format_string($forum->name), 2);
@ -461,7 +461,7 @@ if (!empty($forum)) { // User is starting a new discussion in a forum
if ($prunemform->is_cancelled()) {
redirect(forum_go_back_to("discuss.php?d=$post->discussion"));
redirect(forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $post->discussion))));
} else if ($fromform = $prunemform->get_data()) {
// User submits the data.
$newdiscussion = new stdClass();
@ -525,7 +525,7 @@ if (!empty($forum)) { // User is starting a new discussion in a forum
$event->add_record_snapshot('forum_discussions', $discussion);
$event->trigger();
redirect(forum_go_back_to("discuss.php?d=$newid"));
redirect(forum_go_back_to(new moodle_url("/mod/forum/discuss.php", array('d' => $newid))));
} else {
// Display the prune form.
@ -764,9 +764,9 @@ if ($mform_post->is_cancelled()) {
// Single discussion forums are an exception. We show
// the forum itself since it only has one discussion
// thread.
$discussionurl = "view.php?f=$forum->id";
$discussionurl = new moodle_url("/mod/forum/view.php", array('f' => $forum->id));
} else {
$discussionurl = "discuss.php?d=$discussion->id#p$fromform->id";
$discussionurl = new moodle_url("/mod/forum/discuss.php", array('d' => $discussion->id), 'p' . $fromform->id);
}
$params = array(
@ -787,7 +787,7 @@ if ($mform_post->is_cancelled()) {
$event->add_record_snapshot('forum_discussions', $discussion);
$event->trigger();
redirect(forum_go_back_to("$discussionurl"), $message.$subscribemessage, $timemessage);
redirect(forum_go_back_to($discussionurl), $message.$subscribemessage, $timemessage);
exit;
@ -822,9 +822,9 @@ if ($mform_post->is_cancelled()) {
// Single discussion forums are an exception. We show
// the forum itself since it only has one discussion
// thread.
$discussionurl = "view.php?f=$forum->id";
$discussionurl = new moodle_url("/mod/forum/view.php", array('f' => $forum->id), 'p'.$fromform->id);
} else {
$discussionurl = "discuss.php?d=$discussion->id";
$discussionurl = new moodle_url("/mod/forum/discuss.php", array('d' => $discussion->id), 'p'.$fromform->id);
}
$params = array(
@ -848,7 +848,7 @@ if ($mform_post->is_cancelled()) {
$completion->update_state($cm,COMPLETION_COMPLETE);
}
redirect(forum_go_back_to("$discussionurl#p$fromform->id"), $message.$subscribemessage, $timemessage);
redirect(forum_go_back_to($discussionurl), $message.$subscribemessage, $timemessage);
} else {
print_error("couldnotadd", "forum", $errordestination);

View File

@ -43,8 +43,8 @@ if (! $cm = get_coursemodule_from_instance("forum", $forum->id, $course->id)) {
print_error('invalidcoursemodule');
}
require_login($course, false, $cm);
$returnto = forum_go_back_to($returnpage.'?id='.$course->id.'&f='.$forum->id);
$returnpageurl = new moodle_url('/mod/forum/' . $returnpage, array('id' => $course->id, 'f' => $forum->id));
$returnto = forum_go_back_to($returnpageurl);
if (!forum_tp_can_track_forums($forum)) {
redirect($returnto);
@ -77,6 +77,4 @@ if (forum_tp_is_tracked($forum) ) {
} else {
print_error('cannottrack', '', get_local_referer(false));
}
}
}