summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2008-09-17 18:03:59 +0200
committerlpsolit%gmail.com <>2008-09-17 18:03:59 +0200
commitfafc1b6ca0b40c72fa636a08661f6d585d2cc6eb (patch)
tree07d3607bc590f9f8d989618fc1a43a0d39f54cd7
parenta9acddbb45663924f9a1d8472ed07ab13d45c073 (diff)
downloadbugzilla-fafc1b6ca0b40c72fa636a08661f6d585d2cc6eb.tar.gz
bugzilla-fafc1b6ca0b40c72fa636a08661f6d585d2cc6eb.tar.xz
Bug 417290: Add an email pref to get notifications for newly created bugs - Patch by Frédéric Buclin <LpSolit@gmail.com> r/a=mkanat
-rw-r--r--Bugzilla/Constants.pm6
-rw-r--r--Bugzilla/User.pm18
-rw-r--r--template/en/default/account/prefs/email.html.tmpl2
3 files changed, 17 insertions, 9 deletions
diff --git a/Bugzilla/Constants.pm b/Bugzilla/Constants.pm
index e06fee00c..abe1fe248 100644
--- a/Bugzilla/Constants.pm
+++ b/Bugzilla/Constants.pm
@@ -100,7 +100,8 @@ use File::Basename;
POS_EVENTS
EVT_OTHER EVT_ADDED_REMOVED EVT_COMMENT EVT_ATTACHMENT EVT_ATTACHMENT_DATA
EVT_PROJ_MANAGEMENT EVT_OPENED_CLOSED EVT_KEYWORD EVT_CC EVT_DEPEND_BLOCK
-
+ EVT_BUG_CREATED
+
NEG_EVENTS
EVT_UNCONFIRMED EVT_CHANGED_BY_ME
@@ -303,11 +304,12 @@ use constant EVT_OPENED_CLOSED => 6;
use constant EVT_KEYWORD => 7;
use constant EVT_CC => 8;
use constant EVT_DEPEND_BLOCK => 9;
+use constant EVT_BUG_CREATED => 10;
use constant POS_EVENTS => EVT_OTHER, EVT_ADDED_REMOVED, EVT_COMMENT,
EVT_ATTACHMENT, EVT_ATTACHMENT_DATA,
EVT_PROJ_MANAGEMENT, EVT_OPENED_CLOSED, EVT_KEYWORD,
- EVT_CC, EVT_DEPEND_BLOCK;
+ EVT_CC, EVT_DEPEND_BLOCK, EVT_BUG_CREATED;
use constant EVT_UNCONFIRMED => 50;
use constant EVT_CHANGED_BY_ME => 51;
diff --git a/Bugzilla/User.pm b/Bugzilla/User.pm
index f495132b1..aa3baa243 100644
--- a/Bugzilla/User.pm
+++ b/Bugzilla/User.pm
@@ -1430,14 +1430,18 @@ sub wants_bug_mail {
}
}
- # You role is new if the bug itself is.
- # Only makes sense for the assignee, QA contact and the CC list.
- if ($bug_is_new
- && ($relationship == REL_ASSIGNEE
+ if ($bug_is_new) {
+ # Notify about new bugs.
+ $events{+EVT_BUG_CREATED} = 1;
+
+ # You role is new if the bug itself is.
+ # Only makes sense for the assignee, QA contact and the CC list.
+ if ($relationship == REL_ASSIGNEE
|| $relationship == REL_QA
- || $relationship == REL_CC))
- {
- $events{+EVT_ADDED_REMOVED} = 1;
+ || $relationship == REL_CC)
+ {
+ $events{+EVT_ADDED_REMOVED} = 1;
+ }
}
if ($commentField =~ /Created an attachment \(/) {
diff --git a/template/en/default/account/prefs/email.html.tmpl b/template/en/default/account/prefs/email.html.tmpl
index ad9b370de..57c76a93e 100644
--- a/template/en/default/account/prefs/email.html.tmpl
+++ b/template/en/default/account/prefs/email.html.tmpl
@@ -119,6 +119,8 @@ document.write('<input type="button" value="Disable All Mail" onclick="SetCheckb
[% events = [
{ id = constants.EVT_ADDED_REMOVED,
description = "I'm added to or removed from this capacity" },
+ { id = constants.EVT_BUG_CREATED,
+ description = "A new $terms.bug is created" },
{ id = constants.EVT_OPENED_CLOSED,
description = "The $terms.bug is resolved or reopened" },
{ id = constants.EVT_PROJ_MANAGEMENT,