/// This file to be included so we can assume config.php has already been included.
/// We also assume that $user, $course, $currenttab have been set
+ if (!isset($filtertype)) {
+ $filtertype = '';
+ }
+ if (!isset($filterselect)) {
+ $filterselect = '';
+ }
if (empty($currenttab) or empty($user) or empty($course)) {
- error('You cannot call this script in that way');
+ //error('You cannot call this script in that way');
}
- print_heading(fullname($user, isteacher($course->id)));
-
-//if (!empty($USER) and (isteacher($course->id) or (($USER->id == $user->id) and !isguest()))) { // tabs are shown
+ if (($filtertype == 'site' && $filterselect) || ($filtertype=='user' && $filterselect)) {
+ $user = get_record('user','id',$filterselect);
+ }
$inactive = NULL;
$activetwo = NULL;
$toprow = array();
- $toprow[] = new tabobject('profile', $CFG->wwwroot.'/user/view.php?id='.$user->id.'&course='.$course->id,
- get_string('profile'));
+ /**************************************
+ * Site Level participation or Blogs *
+ **************************************/
+ if ($filtertype == 'site') {
+ $site = get_site();
+ print_heading($site->fullname);
+
+ if ($CFG->bloglevel >= 4) {
+ $toprow[] = new tabobject('participants', $CFG->wwwroot.'/user/index.php?id='.SITEID,
+ get_string('participants'));
+ $toprow[] = new tabobject('blogs', $CFG->wwwroot.'/blog/index.php?filtertype=site&',
+ get_string('blogs'));
+ }
-/// Can only edit profile if it belongs to user or current user is admin and not editing primary admin
+ /**************************************
+ * Course Level participation or Blogs *
+ **************************************/
+ } else if ($filtertype == 'course' && $filterselect) {
- if (($mainadmin = get_admin()) === false) {
- $mainadmin->id = 0; /// Weird - no primary admin!
- }
- if ((!empty($USER->id) and ($USER->id == $user->id) and !isguest()) or
- (isadmin() and ($user->id != $mainadmin->id)) ) {
+ $course = get_record('course','id',$filterselect);
+ print_heading($course->fullname);
- if(empty($CFG->loginhttps)) {
- $wwwroot = $CFG->wwwroot;
- } else {
- $wwwroot = str_replace('http','https',$CFG->wwwroot);
+ if ($CFG->bloglevel >= 3) {
+
+ $toprow[] = new tabobject('participants', $CFG->wwwroot.'/user/index.php?id='.$filterselect.'&group=0',
+ get_string('participants')); //the groupid hack is necessary, otherwise the group in the session willbe used
+
+ $toprow[] = new tabobject('blogs', $CFG->wwwroot.'/blog/index.php?filtertype=course&filterselect='.$filterselect, get_string('blogs'));
}
- $toprow[] = new tabobject('editprofile', $wwwroot.'/user/edit.php?id='.$user->id.'&course='.$course->id,
- get_string('editmyprofile'));
- }
+ /**************************************
+ * Group Level participation or Blogs *
+ **************************************/
+ } else if ($filtertype == 'group' && $filterselect) {
-/// Everyone can see posts for this user
+ $group = get_record('groups','id',$filterselect);
+ print_heading($group->name);
- $toprow[] = new tabobject('forumposts', $CFG->wwwroot.'/mod/forum/user.php?id='.$user->id.'&course='.$course->id,
- get_string('forumposts', 'forum'));
+ if ($CFG->bloglevel >= 2) {
- if (in_array($currenttab, array('posts', 'discussions'))) {
- $inactive = array('forumposts');
- $activetwo = array('forumposts');
+ $toprow[] = new tabobject('participants', $CFG->wwwroot.'/user/index.php?id='.$course->id.'&group='.$filterselect,
+ get_string('participants'));
- $secondrow = array();
- $secondrow[] = new tabobject('posts', $CFG->wwwroot.'/mod/forum/user.php?course='.$course->id.
- '&id='.$user->id.'&mode=posts', get_string('posts', 'forum'));
- $secondrow[] = new tabobject('discussions', $CFG->wwwroot.'/mod/forum/user.php?course='.$course->id.
- '&id='.$user->id.'&mode=discussions', get_string('discussions', 'forum'));
- }
+
+ $toprow[] = new tabobject('blogs', $CFG->wwwroot.'/blog/index.php?filtertype=group&filterselect='.$filterselect, get_string('blogs'));
+ }
+ /*********************************************************************
+ * if selection in progress, only print blogs tab, in blog interface *
+ *********************************************************************/
+ } else if ($filtertype == 'course' || $filtertype == 'group') {
-/// Current user must be teacher of the course or the course allows user to view their reports
- if (isteacher($course->id) or ($course->showreports and $USER->id == $user->id)) {
+ print_heading('');
+ $toprow[] = new tabobject('blogs', $CFG->wwwroot.'/blog/index.php?filtertype=site&',
+ get_string('blogs'));
- $toprow[] = new tabobject('reports', $CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=outline', get_string('activityreports'));
+ /**************************************
+ * User Level participation or Blogs *
+ **************************************/
+ } else {
+ if (isset($userid)) {
+ $user = get_record('user','id', $userid);
+ }
+ print_heading(fullname($user, isteacher($course->id)));
+ $toprow[] = new tabobject('profile', $CFG->wwwroot.'/user/view.php?id='.$user->id.'&course='.$course->id,
+ get_string('profile'));
- if (in_array($currenttab, array('outline', 'complete', 'todaylogs', 'alllogs', 'stats'))) {
- $inactive = array('reports');
- $activetwo = array('reports');
- $secondrow = array();
- $secondrow[] = new tabobject('outline', $CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=outline', get_string('outlinereport'));
- $secondrow[] = new tabobject('complete', $CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=complete', get_string('completereport'));
- $secondrow[] = new tabobject('todaylogs', $CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=todaylogs', get_string('todaylogs'));
- $secondrow[] = new tabobject('alllogs', $CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=alllogs', get_string('alllogs'));
- if (!empty($CFG->enablestats)) {
- $secondrow[] = new tabobject('stats',$CFG->wwwroot.'/course/user.php?id='.$course->id.
- '&user='.$user->id.'&mode=stats',get_string('stats'));
+ /// Can only edit profile if it belongs to user or current user is admin and not editing primary admin
+
+ if (($mainadmin = get_admin()) === false) {
+ $mainadmin->id = 0; /// Weird - no primary admin!
+ }
+ if ((!empty($USER->id) and ($USER->id == $user->id) and !isguest()) or
+ (isadmin() and ($user->id != $mainadmin->id)) ) {
+
+ if(empty($CFG->loginhttps)) {
+ $wwwroot = $CFG->wwwroot;
+ } else {
+ $wwwroot = str_replace('http','https',$CFG->wwwroot);
}
+ $toprow[] = new tabobject('editprofile', $wwwroot.'/user/edit.php?id='.$user->id.'&course='.$course->id,
+ get_string('editmyprofile'));
}
- }
+
+ /// Everyone can see posts for this user
+
+ $toprow[] = new tabobject('forumposts', $CFG->wwwroot.'/mod/forum/user.php?id='.$user->id.'&course='.$course->id,
+ get_string('forumposts', 'forum'));
+
+ if (in_array($currenttab, array('posts', 'discussions'))) {
+ $inactive = array('forumposts');
+ $activetwo = array('forumposts');
+
+ $secondrow = array();
+ $secondrow[] = new tabobject('posts', $CFG->wwwroot.'/mod/forum/user.php?course='.$course->id.
+ '&id='.$user->id.'&mode=posts', get_string('posts', 'forum'));
+ $secondrow[] = new tabobject('discussions', $CFG->wwwroot.'/mod/forum/user.php?course='.$course->id.
+ '&id='.$user->id.'&mode=discussions', get_string('discussions', 'forum'));
+ }
+ /// Blog entry, everyone can view
+ if ($CFG->bloglevel >= 1) {
+ $toprow[] = new tabobject('blogs', $CFG->wwwroot.'/blog/index.php?userid='.$user->id.'&courseid='.$course->id, get_string('blogs', 'blog'));
+ }
+
+
+ /// Current user must be teacher of the course or the course allows user to view their reports
+ if (isteacher($course->id) or ($course->showreports and $USER->id == $user->id)) {
+
+ $toprow[] = new tabobject('reports', $CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=outline', get_string('activityreports'));
+
+ if (in_array($currenttab, array('outline', 'complete', 'todaylogs', 'alllogs', 'stats'))) {
+ $inactive = array('reports');
+ $activetwo = array('reports');
+
+ $secondrow = array();
+ $secondrow[] = new tabobject('outline', $CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=outline', get_string('outlinereport'));
+ $secondrow[] = new tabobject('complete', $CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=complete', get_string('completereport'));
+ $secondrow[] = new tabobject('todaylogs', $CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=todaylogs', get_string('todaylogs'));
+ $secondrow[] = new tabobject('alllogs', $CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=alllogs', get_string('alllogs'));
+ if (!empty($CFG->enablestats)) {
+ $secondrow[] = new tabobject('stats',$CFG->wwwroot.'/course/user.php?id='.$course->id.
+ '&user='.$user->id.'&mode=stats',get_string('stats'));
+ }
+ }
+
+ }
+
+ } //close last bracket (individual tags)
+
/// Add second row to display if there is one
if (!empty($secondrow)) {
$tabs = array($toprow);
}
-
/// Print out the tabs and continue!
print_tabs($tabs, $currenttab, $inactive, $activetwo);