]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 25521 - Keyword field in new bug entry. Patch by jeff.hedlund@matrixsi.com; r...
authorgerv%gerv.net <>
Sat, 14 Sep 2002 05:21:16 +0000 (05:21 +0000)
committergerv%gerv.net <>
Sat, 14 Sep 2002 05:21:16 +0000 (05:21 +0000)
post_bug.cgi
template/en/default/bug/create/create.html.tmpl

index b7fdf66d530b8f7b7d1809f41a1785aa86c3e7a8..8d21f15050c5924c216f05abe3207c9f5e20c5f5 100755 (executable)
@@ -220,6 +220,27 @@ if (defined $::FORM{'cc'}) {
         }
     }
 }
+# Check for valid keywords and create list of keywords to be added to db
+# (validity routine copied from process_bug.cgi)
+my @keywordlist;
+my %keywordseen;
+
+if ($::FORM{'keywords'} && UserInGroup("editbugs")) {
+    foreach my $keyword (split(/[\s,]+/, $::FORM{'keywords'})) {
+        if ($keyword eq '') {
+           next;
+        }
+        my $i = GetKeywordIdFromName($keyword);
+        if (!$i) {
+            $vars->{'keyword'} = $keyword;
+            ThrowUserError("unknown_keyword");
+        }
+        if (!$keywordseen{$i}) {
+            push(@keywordlist, $i);
+            $keywordseen{$i} = 1;
+        }
+    }
+}
 
 # Build up SQL string to add bug.
 my $sql = "INSERT INTO bugs " . 
@@ -281,6 +302,13 @@ foreach my $ccid (keys(%ccids)) {
     SendSQL("INSERT INTO cc (bug_id, who) VALUES ($id, $ccid)");
 }
 
+if (UserInGroup("editbugs")) {
+    foreach my $keyword (@keywordlist) {
+        SendSQL("INSERT INTO keywords (bug_id, keywordid) 
+                 VALUES ($id, $keyword)");
+    }
+}
+
 SendSQL("UNLOCK TABLES") if Param("shadowdb");
 
 # Assemble the -force* strings so this counts as "Added to this capacity"
index 3e776865b9096bf142885c0c0cf481abc8942ff7..066c11b63adcc4465a91a9a2a531c04f8de79f14 100644 (file)
       <br>
     </td>
   </tr>
+
+  [% IF UserInGroup('editbugs') %]
+    <tr>
+      <td align="right" valign="top">
+        <strong>
+          <a href="describekeywords.cgi">Keywords</a>:
+        </strong>
+      </td>
+      <td colspan="3">
+        <input name="keywords" size="60" value=""> (optional)
+      </td>
+    </tr>
+  [% END %]
   
   <tr>
     <td></td>