[evolvis-commits] r11596: adding filter to activity↵
mirabilos at evolvis.org
mirabilos at evolvis.org
Thu Feb 24 18:19:52 CET 2011
Author: mirabilos
Date: 2011-02-24 18:19:52 +0100 (Thu, 24 Feb 2011)
New Revision: 11596
Added:
trunk/gforge_base/evolvisforge-5.1/gforge/db/20060216.sql
Modified:
trunk/gforge_base/evolvisforge-5.1/gforge/www/activity/index.php
Log:
adding filter to activity
Added: trunk/gforge_base/evolvisforge-5.1/gforge/db/20060216.sql
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/db/20060216.sql (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/db/20060216.sql 2011-02-24 17:19:52 UTC (rev 11596)
@@ -0,0 +1,37 @@
+DROP VIEW activity_vw;
+
+CREATE VIEW activity_vw AS
+SELECT
+agl.group_id, 'trackeropen'::text AS section, agl.group_artifact_id AS ref_id,
+a.artifact_id as subref_id, a.summary as description, a.open_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM artifact_group_list agl JOIN artifact a using (group_artifact_id),
+users u WHERE u.user_id=a.submitted_by
+UNION
+SELECT
+agl.group_id, 'trackerclose'::text AS section, agl.group_artifact_id AS ref_id,
+a.artifact_id as subref_id, a.summary as description, a.close_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM artifact_group_list agl JOIN artifact a using (group_artifact_id), users u WHERE u.user_id=a.assigned_to
+--actually should join against
+AND a.close_date > 0
+UNION
+SELECT
+agl.group_id, 'commit'::text AS section, agl.group_artifact_id AS ref_id,
+a.artifact_id as subref_id, pcdm.log_text AS description, pcdm.cvs_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM artifact_group_list agl JOIN artifact a using (group_artifact_id),
+plugin_cvstracker_data_master pcdm, plugin_cvstracker_data_artifact pcda, users u
+WHERE pcdm.holder_id=pcda.id
+AND pcda.group_artifact_id=a.artifact_id
+AND u.user_name=pcdm.author
+UNION
+SELECT
+frsp.group_id, 'frsrelease'::text as section,frsp.package_id as ref_id,
+frsr.release_id as subref_id, frsr.name AS description, frsr.release_date AS activity_date,
+u.user_id, u.user_name, u.realname FROM frs_package frsp JOIN frs_release frsr USING (package_id), users u WHERE
+u.user_id=frsr.released_by
+UNION
+SELECT
+fgl.group_id, 'forumpost'::text as section,fgl.group_forum_id as ref_id, forum.msg_id
+as subref_id, forum.subject AS description, forum.post_date AS activity_date, u.user_id,
+u.user_name, u.realname FROM forum_group_list fgl JOIN forum USING (group_forum_id), users u WHERE
+u.user_id=forum.posted_by
+;
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/www/activity/index.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/activity/index.php 2011-02-24 17:19:51 UTC (rev 11595)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/activity/index.php 2011-02-24 17:19:52 UTC (rev 11596)
@@ -18,6 +18,8 @@
$group_id = getIntFromRequest("group_id");
$begin = getStringFromRequest("start_date");
$end = getStringFromRequest("end_date");
+$show=getArrayFromRequest("show");
+
if (!$begin || $begin==0) {
$begin = (time()-(30*86400));
} else {
@@ -43,8 +45,32 @@
site_project_header(array('title'=>$Language->getText('projectactivity','headertype'),'group'=>$group_id,'toptab'=>'activity'));
+$ids=array();
+$ids[]='commit';
+$ids[]='trackeropen';
+$ids[]='trackerclose';
+$ids[]='frsrelease';
+$ids[]='forumpost';
+
+$texts=array();
+$texts[]='Commits';
+$texts[]='Tracker Opened';
+$texts[]='Tracker Closed';
+$texts[]='FRS Release';
+$texts[]='Forum Post';
+
+if (count($show) < 1) {
+ $show=$ids;
+}
+foreach ($show as $showthis) {
+ if (array_search($showthis,$ids) === false) {
+ exit_error('Error','Invalid Data Passed to query');
+ }
+}
+$multiselect=html_build_multiple_select_box_from_arrays($ids,$texts,'show[]',$show,5,false);
+
$sql="SELECT * FROM activity_vw WHERE activity_date BETWEEN '".$begin."' AND '".$end."'
- AND group_id='$group_id' ORDER BY activity_date DESC";
+ AND group_id='$group_id' AND section IN ('".implode("','",$show)."') ORDER BY activity_date DESC";
//echo $sql;
$res=db_query($sql);
echo db_error();
@@ -56,18 +82,21 @@
?>
<br />
-<table border="0" cellspacing="0">
+<table border="0" cellspacing="0" cellpadding="3" bgcolor="#E0E0E0">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="group_id" value="<?php echo $group_id; ?>">
-<tr><td>
-<strong><?php echo $Language->getText('projectactivity','startdate') ?></strong><br />
-<input name="start_date" value="<?php echo date('Y-m-d',$begin); ?>" size="10" maxlength="10" />
-</td><td>
-<strong><?php echo $Language->getText('projectactivity','enddate') ?></strong><br />
-<input name="end_date" value="<?php echo date('Y-m-d',$end); ?>" size="10" maxlength="10" />
-</td><td>
-<input type="submit" name="submit" value="Submit">
-</tr></td>
+<tr>
+ <td><strong><?php echo $Language->getText('projectactivity','headeractivity') ?></strong></td>
+ <td><strong><?php echo $Language->getText('projectactivity','startdate') ?></strong></td>
+ <td><strong><?php echo $Language->getText('projectactivity','enddate') ?></strong></td>
+ <td></td>
+</tr>
+<tr>
+ <td><?php echo $multiselect; ?></td>
+ <td valign="top"><input name="start_date" value="<?php echo date('Y-m-d',$begin); ?>" size="10" maxlength="10" /></td>
+ <td valign="top"><input name="end_date" value="<?php echo date('Y-m-d',$end); ?>" size="10" maxlength="10" /></td>
+ <td valign="top"><input type="submit" name="submit" value="Submit"></td>
+</tr>
</form>
</table>
<br />
@@ -109,6 +138,11 @@
$url='<a href="/frs/?release_id='.$arr['subref_id'].'&group_id='.$arr['group_id'].'">FRS Release [#'.$arr['description'].']</a>';
break;
}
+ case 'forumpost': {
+ $icon=html_image("ic/forum20g.png","20","20",array("border"=>"0","ALT"=>"Forum"));
+ $url='<a href="/forum/?msg_id='.$arr['subref_id'].'&group_id='.$arr['group_id'].'">Forum Post [#'.$arr['subref_id'].']'.$arr['description'].'</a>';
+ break;
+ }
}
echo '<tr '. $HTML->boxGetAltRowStyle($j++) . '>
<td> '.date('H:i:s',$arr['activity_date']).'</td>
More information about the evolvis-commits
mailing list