diff -ubBr --exclude=uploads --exclude=images --exclude=images_pcf --exclude=config.php --exclude=languages --exclude=settings.php Upload/global.php forum/global.php
--- Upload/global.php	2006-07-28 04:29:52.000000000 +0200
+++ forum/global.php	2006-05-16 13:23:00.000000000 +0200
@@ -209,9 +208,24 @@
 	eval("\$welcomeblock = \"".$templates->get("header_welcomeblock_guest")."\";");
 }
 $unreadreports = "";
-if($mybb->usergroup['cancp'] == "yes" || $mybb->usergroup['issupermod'] == "yes" || $mybb->usergroup['gid'] == 6)
+$grupy = explode(",", $mybbgroups); // KK
+//if($mybb->usergroup['cancp'] == "yes" || $mybb->usergroup['issupermod'] == "yes" || $mybb->usergroup['gid'] == 6)
+if($mybb->usergroup['cancp'] == "yes" || $mybb->usergroup['issupermod'] == "yes" || in_array("6", $grupy))
 {
 	$reported = $cache->read("reportedposts");
+	// KK:
+	$reported['unread'] = 0 ;
+	if (is_array($reported['fids']))
+	{
+		foreach ($reported['fids'] as $reported_fid => $reports_in_fid)
+		{
+			if (ismod($reported_fid) == 'yes')
+			{
+				$reported['unread'] += $reports_in_fid ;
+			}
+		}
+	}
+	// KK^
 	if($reported['unread'] > 0)
 	{
 		if($reported['unread'] == 1)
diff -ubBr --exclude=uploads --exclude=images --exclude=images_pcf --exclude=config.php --exclude=languages --exclude=settings.php Upload/inc/class_datacache.php forum/inc/class_datacache.php
--- Upload/inc/class_datacache.php	2006-07-28 04:29:52.000000000 +0200
+++ forum/inc/class_datacache.php	2006-05-15 21:42:58.000000000 +0200
@@ -291,6 +291,12 @@
 		$total = $db->fetch_array($query);
 		$query = $db->query("SELECT dateline FROM ".TABLE_PREFIX."reportedposts WHERE reportstatus='0' ORDER BY dateline DESC");
 		$latest = $db->fetch_array($query);
+		// KK: aby bylo fid :
+		$query = $db->query("SELECT fid, COUNT(rid) as num FROM ".TABLE_PREFIX."reportedposts WHERE reportstatus='0' GROUP BY fid");
+		while ($fids = $db->fetch_array($query))
+		{
+			$reports['fids'][$fids['fid']] = $fids['num'];
+		}
 		$reports['unread'] = $num['unreadcount'];
 		$reports['total'] = $total['reportcount'];
 		$reports['lastdateline'] = $latest['dateline'];
diff -ubBr --exclude=uploads --exclude=images --exclude=images_pcf --exclude=config.php --exclude=languages --exclude=settings.php Upload/moderation.php forum/moderation.php
--- Upload/moderation.php	2006-07-28 04:29:52.000000000 +0200
+++ forum/moderation.php	2006-08-11 12:51:10.000000000 +0200
@@ -1510,11 +1554,11 @@
 			{
 				$flist .= ",'".$forum['fid']."'";
 			}
-		}
 		if($flist)
 		{
 			$flist = "AND fid IN (0$flist)";
 		}
+		}
         if(!is_array($mybb->input['reports']))
         {
             error($lang->error_noselected_reports);
@@ -1528,7 +1572,7 @@

         $plugins->run_hooks("moderation_do_reports");

-		$db->query("UPDATE ".TABLE_PREFIX."reportedposts SET reportstatus='1' WHERE rid IN ($rids)");
+		$db->query("UPDATE ".TABLE_PREFIX."reportedposts SET reportstatus='1' WHERE rid IN ($rids) $flist"); // KK: nie bylo flist... dziwne
 		$cache->updatereportedposts();
 		redirect("moderation.php?action=reports", $lang->redirect_reportsmarked);
 		break;
@@ -1545,8 +1589,30 @@
 		{
 			$forums[$forum['fid']] = $forum['name'];
 		}
+		// KK: (moderatorzy widza swoje reported posts)
+		$flist = "";
+		$fchild_list= "";
+		if($mybb->usergroup['issupermod'] != "yes")
+		{
+			$query = $db->query("SELECT * FROM ".TABLE_PREFIX."moderators WHERE uid='".$mybb->user[uid]."'");
+			while($forum = $db->fetch_array($query))
+			{
+				$flist .= ",'".$forum['fid']."'";
+				$fchild_list .= ($fchild_list ? " OR " : "WHERE ") . "CONCAT(',',parentlist,',') LIKE '%," . $forum['fid'] . ",%'";
+			}
+			if($flist)
+			{
+				$query = $db->query("SELECT * FROM ".TABLE_PREFIX."forums $fchild_list");
+				while($forum = $db->fetch_array($query))
+				{
+					$flist .= ",'".$forum['fid']."'";
+				}
+				$flist = "AND r.fid IN (0$flist)";
+			}
+		}
+		//KK^
 		$trow = "trow1";
-		$query = $db->query("SELECT r.*, u.username, up.username AS postusername, up.uid AS postuid, t.subject AS threadsubject FROM ".TABLE_PREFIX."reportedposts r LEFT JOIN ".TABLE_PREFIX."posts p ON (r.pid=p.pid) LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid) LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid) LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid) WHERE r.reportstatus ='0' ORDER BY r.dateline ASC");
+		$query = $db->query("SELECT r.*, u.username, up.username AS postusername, up.uid AS postuid, t.subject AS threadsubject FROM ".TABLE_PREFIX."reportedposts r LEFT JOIN ".TABLE_PREFIX."posts p ON (r.pid=p.pid) LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid) LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid) LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid) WHERE r.reportstatus ='0' $flist ORDER BY r.dateline ASC"); // KK: fids_moderated - $flist
 		while($report = $db->fetch_array($query))
 		{
 			$reportdate = mydate($mybb->settings['dateformat'], $report['dateline']);

