|
From: Jirka P. <fi...@us...> - 2002-06-14 15:26:09
|
Update of /cvsroot/phpbt/phpbt
In directory usw-pr-cvs1:/tmp/cvs-serv27194/phpbt
Modified Files:
bug.php query.php
Log Message:
Some fixes and adding of 'closed' and 'to be closed' 'in version'. Someone is wanted to review bugemail.txt and change the second mail template.
Index: bug.php
===================================================================
RCS file: /cvsroot/phpbt/phpbt/bug.php,v
retrieving revision 1.109
retrieving revision 1.110
diff -u -r1.109 -r1.110
--- bug.php 13 Jun 2002 16:03:29 -0000 1.109
+++ bug.php 14 Jun 2002 15:26:05 -0000 1.110
@@ -159,16 +159,69 @@
);
foreach($cfgDatabase as $field => $table) {
- $oldvalue = $db->getOne("select ${field}_name from $table".
- " where ${field}_id = {$buginfo[$field.'_id']}");
+ switch ($field) {
+ case 'database':
+ if ($buginfo[$field.'_id']) {
+ $db_oldvalue = $db->getRow('select '.$field.'_name, '.$field.'_version from '.$table.
+ ' where '.$field.'_id = '.$buginfo[$field.'_id']);
+ $oldvalue = $db_oldvalue[$field.'_name'].' '.$db_oldvalue[$field.'_version'];
+ } else {
+ $oldvalue = 'None';
+ }
+
+ if (!empty($cf[$field.'_id'])) {
+ $db_newvalue = $db->getRow('select '.$field.'_name, '.$field.'_version from '.$table.
+ ' where '.$field.'_id = '.$cf[$field.'_id']);
+ $newvalue = $db_newvalue[$field.'_name'].' '.$db_newvalue[$field.'_version'];
+ } else {
+ $newvalue = 'None';
+ }
+ break;
+ default:
+ $oldvalue = $db->getOne("select ${field}_name from $table".
+ " where ${field}_id = {$buginfo[$field.'_id']}");
+ if (!empty($cf[$field.'_id'])) {
+ $newvalue = $db->getOne("select ${field}_name from $table".
+ " where ${field}_id = {$cf[$field.'_id']}");
+ }
+ break;
+ }
+ if (!empty($cf[$field.'_id'])) {
+ $db->query('insert into '.TBL_BUG_HISTORY.
+ ' (bug_id, changed_field, old_value, new_value, created_by, created_date)'.
+ " values (". join(', ', array($buginfo['bug_id'], $db->quote($field),
+ $db->quote(stripslashes($oldvalue)),
+ $db->quote(stripslashes($newvalue)), $u, $now)).")");
+ $t->assign(array(
+ $field.'_id' => stripslashes($newvalue),
+ $field.'_id_stat' => '!'
+ ));
+ } else {
+ $t->assign(array(
+ $field.'_id' => stripslashes($oldvalue),
+ $field.'_id_stat' => ' '
+ ));
+ }
+ }
+
+ // Handle versions other than version
+ $versions = array ('to_be_closed_in_version' => 'to be closed in version',
+ 'closed_in_version' => 'closed in version');
+
+ foreach($versions as $field => $field_name) {
+ if ($buginfo[$field.'_id']) {
+ $oldvalue = $db->getOne('select version_name from '.$cfgDatabase['version'].
+ ' where version_id = '.$buginfo[$field.'_id']);
+ }
+
if (!empty($cf[$field.'_id'])) {
- $newvalue = $db->getOne("select ${field}_name from $table".
- " where ${field}_id = {$cf[$field.'_id']}");
+ $newvalue = $db->getOne('select version_name from '.$cfgDatabase['version'].
+ ' where version_id = '.$cf[$field.'_id']);
$db->query('insert into '.TBL_BUG_HISTORY.
' (bug_id, changed_field, old_value, new_value, created_by, created_date)'.
- " values (". join(', ', array($buginfo['bug_id'], $db->quote($field),
- $db->quote(stripslashes($oldvalue)),
- $db->quote(stripslashes($newvalue)), $u, $now)).")");
+ " values (". join(', ', array($buginfo['bug_id'], $db->quote($field_name),
+ $db->quote(stripslashes($oldvalue)),
+ $db->quote(stripslashes($newvalue)), $u, $now)).")");
$t->assign(array(
$field.'_id' => stripslashes($newvalue),
$field.'_id_stat' => '!'
@@ -181,7 +234,7 @@
}
}
- // Reporter never changes;
+ // Reporter never changes
$reporter = $db->getOne('select email from '.TBL_AUTH_USER.
" u, ".TBL_USER_PREF." p where u.user_id = {$buginfo['created_by']} ".
"and u.user_id = p.user_id and email_notices = 1");
Index: query.php
===================================================================
RCS file: /cvsroot/phpbt/phpbt/query.php,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- query.php 13 Jun 2002 15:07:10 -0000 1.80
+++ query.php 14 Jun 2002 15:26:05 -0000 1.81
@@ -90,7 +90,8 @@
if (!empty($severity) and $severity[0]) {
$flags[] = 'b.severity_id in ('.delimit_list(',',$severity).')';
}
- if (!empty($database) and $database[0]) {
+ if (!empty($database) and isset($database[0])) {
+ // $database[0] can be 0, which stands for no database reported
$flags[] = 'b.database_id in ('.delimit_list(',',$database).')';
}
if (!empty($site) and $site[0]) {
|