Merge branch 'MDL-47918-master' of git://github.com/andrewnicols/moodle

This commit is contained in:
Dan Poltawski 2014-10-30 14:31:38 +00:00
commit fb9604d67c
2 changed files with 15 additions and 4 deletions

View file

@ -490,7 +490,9 @@ $string['unreadpostsnumber'] = '{$a} unread posts';
$string['unreadpostsone'] = '1 unread post'; $string['unreadpostsone'] = '1 unread post';
$string['unsubscribe'] = 'Unsubscribe from this forum'; $string['unsubscribe'] = 'Unsubscribe from this forum';
$string['unsubscribeall'] = 'Unsubscribe from all forums'; $string['unsubscribeall'] = 'Unsubscribe from all forums';
$string['unsubscribeallconfirm'] = 'You are subscribed to {$a} forums now. Do you really want to unsubscribe from all forums and disable forum auto-subscribe?'; $string['unsubscribeallconfirm'] = 'You are currently subscribed to {$a->forums} forums, and {$a->discussions} discussions. Do you really want to unsubscribe from all forums and discussions, and disable discussion auto-subscription?';
$string['unsubscribeallconfirmforums'] = 'You are currently subscribed to {$a->forums} forums. Do you really want to unsubscribe from all forums and disable discussion auto-subscription?';
$string['unsubscribeallconfirmdiscussions'] = 'You are currently subscribed to {$a->discussions} discussions. Do you really want to unsubscribe from all discussions and disable discussion auto-subscription?';
$string['unsubscribealldone'] = 'All optional forum subscriptions were removed. You will still receive notifications from forums with forced subscription. To manage forum notifications go to Messaging in My Profile Settings.'; $string['unsubscribealldone'] = 'All optional forum subscriptions were removed. You will still receive notifications from forums with forced subscription. To manage forum notifications go to Messaging in My Profile Settings.';
$string['unsubscribeallempty'] = 'You are not subscribed to any forums. To disable all notifications from this server go to Messaging in My Profile Settings.'; $string['unsubscribeallempty'] = 'You are not subscribed to any forums. To disable all notifications from this server go to Messaging in My Profile Settings.';
$string['unsubscribed'] = 'Unsubscribed'; $string['unsubscribed'] = 'Unsubscribed';

View file

@ -52,6 +52,7 @@ if (data_submitted() and $confirm and confirm_sesskey()) {
foreach($forums as $forum) { foreach($forums as $forum) {
\mod_forum\subscriptions::unsubscribe_user($USER->id, $forum, context_module::instance($forum->cm), true); \mod_forum\subscriptions::unsubscribe_user($USER->id, $forum, context_module::instance($forum->cm), true);
} }
$DB->delete_records('forum_discussion_subs', array('userid' => $USER->id));
$DB->set_field('user', 'autosubscribe', 0, array('id'=>$USER->id)); $DB->set_field('user', 'autosubscribe', 0, array('id'=>$USER->id));
echo $OUTPUT->box(get_string('unsubscribealldone', 'forum')); echo $OUTPUT->box(get_string('unsubscribealldone', 'forum'));
@ -60,10 +61,18 @@ if (data_submitted() and $confirm and confirm_sesskey()) {
die; die;
} else { } else {
$a = count(\mod_forum\subscriptions::get_unsubscribable_forums()); $count = new stdClass();
$count->forums = count(\mod_forum\subscriptions::get_unsubscribable_forums());
$count->discussions = $DB->count_records('forum_discussion_subs', array('userid' => $USER->id));
if ($a) { if ($count->forums || $count->discussions) {
$msg = get_string('unsubscribeallconfirm', 'forum', $a); if ($count->forums && $count->discussions) {
$msg = get_string('unsubscribeallconfirm', 'forum', $count);
} elseif ($count->forums) {
$msg = get_string('unsubscribeallconfirmforums', 'forum', $count);
} elseif ($count->discussions) {
$msg = get_string('unsubscribeallconfirmdiscussions', 'forum', $count);
}
echo $OUTPUT->confirm($msg, new moodle_url('unsubscribeall.php', array('confirm'=>1)), $return); echo $OUTPUT->confirm($msg, new moodle_url('unsubscribeall.php', array('confirm'=>1)), $return);
echo $OUTPUT->footer(); echo $OUTPUT->footer();
die; die;