Merge branch 'MDL-48723_master_forum-plagiarism_errors' of git://github.com/colin...
authorDavid Monllao <davidm@moodle.com>
Fri, 17 Apr 2015 02:41:20 +0000 (10:41 +0800)
committerDavid Monllao <davidm@moodle.com>
Fri, 17 Apr 2015 02:41:20 +0000 (10:41 +0800)
1  2 
mod/forum/lib.php

diff --combined mod/forum/lib.php
@@@ -851,7 -851,7 +851,7 @@@ function forum_cron() 
  
      cron_setup_user();
  
 -    $sitetimezone = $CFG->timezone;
 +    $sitetimezone = core_date::get_server_timezone();
  
      // Now see if there are any digest mails waiting to be sent, and if we should send them
  
@@@ -1190,7 -1190,7 +1190,7 @@@ function forum_make_mail_text($course, 
  
      $by = New stdClass;
      $by->name = fullname($userfrom, $viewfullnames);
 -    $by->date = userdate($post->modified, "", $userto->timezone);
 +    $by->date = userdate($post->modified, "", core_date::get_user_timezone($userto));
  
      $strbynameondate = get_string('bynameondate', 'forum', $by);
  
@@@ -3063,7 -3063,7 +3063,7 @@@ function forum_make_mail_post($course, 
      $fullname = fullname($userfrom, $viewfullnames);
      $by = new stdClass();
      $by->name = '<a href="'.$CFG->wwwroot.'/user/view.php?id='.$userfrom->id.'&amp;course='.$course->id.'">'.$fullname.'</a>';
 -    $by->date = userdate($post->modified, '', $userto->timezone);
 +    $by->date = userdate($post->modified, '', core_date::get_user_timezone($userto));
      $output .= '<div class="author">'.get_string('bynameondate', 'forum', $by).'</div>';
  
      $output .= '</td></tr>';
@@@ -4094,8 -4094,8 +4094,8 @@@ function forum_print_attachments($post
                  $output .= plagiarism_get_links(array('userid' => $post->userid,
                      'file' => $file,
                      'cmid' => $cm->id,
-                     'course' => $post->course,
-                     'forum' => $post->forum));
+                     'course' => $cm->course,
+                     'forum' => $cm->instance));
                  $output .= '<br />';
              }
          }
@@@ -7791,62 -7791,5 +7791,62 @@@ function forum_view($forum, $course, $c
      $event->add_record_snapshot('course', $course);
      $event->add_record_snapshot('forum', $forum);
      $event->trigger();
 +}
 +
 +/**
 + * Trigger the discussion viewed event
 + *
 + * @param  stdClass $modcontext module context object
 + * @param  stdClass $forum      forum object
 + * @param  stdClass $discussion discussion object
 + * @since Moodle 2.9
 + */
 +function forum_discussion_view($modcontext, $forum, $discussion) {
 +    $params = array(
 +        'context' => $modcontext,
 +        'objectid' => $discussion->id,
 +    );
 +
 +    $event = \mod_forum\event\discussion_viewed::create($params);
 +    $event->add_record_snapshot('forum_discussions', $discussion);
 +    $event->add_record_snapshot('forum', $forum);
 +    $event->trigger();
 +}
  
 +/**
 + * Add nodes to myprofile page.
 + *
 + * @param \core_user\output\myprofile\tree $tree Tree object
 + * @param stdClass $user user object
 + * @param bool $iscurrentuser
 + * @param stdClass $course Course object
 + *
 + * @return bool
 + */
 +function mod_forum_myprofile_navigation(core_user\output\myprofile\tree $tree, $user, $iscurrentuser, $course) {
 +    if (isguestuser($user)) {
 +        // The guest user cannot post, so it is not possible to view any posts.
 +        // May as well just bail aggressively here.
 +        return false;
 +    }
 +    $postsurl = new moodle_url('/mod/forum/user.php', array('id' => $user->id));
 +    if (!empty($course)) {
 +        $postsurl->param('course', $course->id);
 +    }
 +    $string = $iscurrentuser ? get_string('myprofileownpost', 'mod_forum') :
 +            get_string('forumposts', 'mod_forum');
 +    $node = new core_user\output\myprofile\node('miscellaneous', 'forumposts', $string, null, $postsurl);
 +    $tree->add_node($node);
 +
 +    $discussionssurl = new moodle_url('/mod/forum/user.php', array('id' => $user->id, 'mode' => 'discussions'));
 +    if (!empty($course)) {
 +        $discussionssurl->param('course', $course->id);
 +    }
 +    $string = $iscurrentuser ? get_string('myprofileowndis', 'mod_forum') :
 +            get_string('myprofileotherdis', 'mod_forum');
 +    $node = new core_user\output\myprofile\node('miscellaneous', 'forumdiscussions', $string, null,
 +        $discussionssurl);
 +    $tree->add_node($node);
 +
 +    return true;
  }