From 4aa03da5994e4e138734f518ab3f85471a6031c8 Mon Sep 17 00:00:00 2001 From: "terry%mozilla.org" <> Date: Fri, 24 Mar 2000 02:22:34 +0000 Subject: Added the concept of a "default milstone" for products, and make sure that all products have at least that milestone defined. --- editproducts.cgi | 94 ++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 64 insertions(+), 30 deletions(-) (limited to 'editproducts.cgi') diff --git a/editproducts.cgi b/editproducts.cgi index f0cc7b61b..abbf8fde8 100755 --- a/editproducts.cgi +++ b/editproducts.cgi @@ -79,10 +79,11 @@ sub CheckProduct ($) # Displays the form to edit a products parameters # -sub EmitFormElements ($$$$$$$$) +sub EmitFormElements ($$$$$$$$$) { my ($product, $description, $milestoneurl, $userregexp, $disallownew, - $votesperuser, $maxvotesperbug, $votestoconfirm) = @_; + $votesperuser, $maxvotesperbug, $votestoconfirm, $defaultmilestone) + = @_; $product = value_quote($product); $description = value_quote($description); @@ -94,11 +95,19 @@ sub EmitFormElements ($$$$$$$$) print " Description:\n"; print " \n"; + $defaultmilestone = value_quote($defaultmilestone); if (Param('usetargetmilestone')) { $milestoneurl = value_quote($milestoneurl); print "\n"; print " Milestone URL:\n"; print " \n"; + + print "\n"; + print " Default milestone:\n"; + + print " \n"; + } else { + print qq{\n}; } # Added -JMR, 2/16/00 @@ -229,7 +238,7 @@ unless ($action) { print ""; } print "\n"; - print " Add a new product\n"; + print " Add a new product\n"; print " Add\n"; print "\n"; @@ -254,7 +263,7 @@ if ($action eq 'add') { print "
\n"; print "\n"; - EmitFormElements('', '', '', '', 0, 0, 10000, 0); + EmitFormElements('', '', '', '', 0, 0, 10000, 0, "---"); print "\n"; print " \n"; @@ -315,23 +324,28 @@ if ($action eq 'new') { $maxvotesperbug = 10000 if !defined $maxvotesperbug; my $votestoconfirm = $::FORM{votestoconfirm}; $votestoconfirm ||= 0; + my $defaultmilestone = $::FORM{defaultmilestone} || "---"; # Add the new product. SendSQL("INSERT INTO products ( " . - "product, description, milestoneurl, disallownew, votesperuser, " . - "maxvotesperbug, votestoconfirm" . - " ) VALUES ( " . - SqlQuote($product) . "," . - SqlQuote($description) . "," . - SqlQuote($milestoneurl) . "," . - $disallownew . "," . - "$votesperuser, $maxvotesperbug, $votestoconfirm)"); + "product, description, milestoneurl, disallownew, votesperuser, " . + "maxvotesperbug, votestoconfirm, defaultmilestone" . + " ) VALUES ( " . + SqlQuote($product) . "," . + SqlQuote($description) . "," . + SqlQuote($milestoneurl) . "," . + $disallownew . "," . + "$votesperuser, $maxvotesperbug, $votestoconfirm, " . + SqlQuote($defaultmilestone) . ")"); SendSQL("INSERT INTO versions ( " . "value, program" . " ) VALUES ( " . SqlQuote($version) . "," . SqlQuote($product) . ")" ); + SendSQL("INSERT INTO milestones (product, value) VALUES (" . + SqlQuote($product) . ", " . SqlQuote($defaultmilestone) . ")"); + # If we're using bug groups, then we need to create a group for this # product as well. -JMR, 2/16/00 if(Param("usebuggroups")) { @@ -668,11 +682,11 @@ if ($action eq 'edit') { # get data of product SendSQL("SELECT description,milestoneurl,disallownew, - votesperuser,maxvotesperbug,votestoconfirm + votesperuser,maxvotesperbug,votestoconfirm,defaultmilestone FROM products WHERE product=" . SqlQuote($product)); my ($description, $milestoneurl, $disallownew, - $votesperuser, $maxvotesperbug, $votestoconfirm) = + $votesperuser, $maxvotesperbug, $votestoconfirm, $defaultmilestone) = FetchSQLData(); my $userregexp = ''; @@ -688,7 +702,7 @@ if ($action eq 'edit') { EmitFormElements($product, $description, $milestoneurl, $userregexp, $disallownew, $votesperuser, $maxvotesperbug, - $votestoconfirm); + $votestoconfirm, $defaultmilestone); print "\n"; print " \n"; @@ -780,6 +794,8 @@ if ($action eq 'edit') { print "\n"; print "\n"; print "\n"; + $defaultmilestone = value_quote($defaultmilestone); + print "\n"; print "\n"; print "\n"; @@ -800,21 +816,23 @@ if ($action eq 'edit') { if ($action eq 'update') { PutHeader("Update product"); - my $productold = trim($::FORM{productold} || ''); - my $description = trim($::FORM{description} || ''); - my $descriptionold = trim($::FORM{descriptionold} || ''); - my $disallownew = trim($::FORM{disallownew} || ''); - my $disallownewold = trim($::FORM{disallownewold} || ''); - my $milestoneurl = trim($::FORM{milestoneurl} || ''); - my $milestoneurlold = trim($::FORM{milestoneurlold} || ''); - my $votesperuser = trim($::FORM{votesperuser} || 0); - my $votesperuserold = trim($::FORM{votesperuserold} || ''); - my $userregexp = trim($::FORM{userregexp} || ''); - my $userregexpold = trim($::FORM{userregexpold} || ''); - my $maxvotesperbug = trim($::FORM{maxvotesperbug} || 0); - my $maxvotesperbugold = trim($::FORM{maxvotesperbugold} || ''); - my $votestoconfirm = trim($::FORM{votestoconfirm} || 0); - my $votestoconfirmold = trim($::FORM{votestoconfirmold} || ''); + my $productold = trim($::FORM{productold} || ''); + my $description = trim($::FORM{description} || ''); + my $descriptionold = trim($::FORM{descriptionold} || ''); + my $disallownew = trim($::FORM{disallownew} || ''); + my $disallownewold = trim($::FORM{disallownewold} || ''); + my $milestoneurl = trim($::FORM{milestoneurl} || ''); + my $milestoneurlold = trim($::FORM{milestoneurlold} || ''); + my $votesperuser = trim($::FORM{votesperuser} || 0); + my $votesperuserold = trim($::FORM{votesperuserold} || 0); + my $userregexp = trim($::FORM{userregexp} || ''); + my $userregexpold = trim($::FORM{userregexpold} || ''); + my $maxvotesperbug = trim($::FORM{maxvotesperbug} || 0); + my $maxvotesperbugold = trim($::FORM{maxvotesperbugold} || 0); + my $votestoconfirm = trim($::FORM{votestoconfirm} || 0); + my $votestoconfirmold = trim($::FORM{votestoconfirmold} || 0); + my $defaultmilestone = trim($::FORM{defaultmilestone} || '---'); + my $defaultmilestoneold = trim($::FORM{defaultmilestoneold} || '---'); my $checkvotes = 0; @@ -955,6 +973,22 @@ if ($action eq 'update') { } + if ($defaultmilestone ne $defaultmilestoneold) { + SendSQL("SELECT value FROM milestones " . + "WHERE value = " . SqlQuote($defaultmilestone) . + " AND product = " . SqlQuote($productold)); + if (!FetchOneColumn()) { + print "Sorry, the milestone $defaultmilestone must be defined first."; + SendSQL("UNLOCK TABLES"); + PutTrailer($localtrailer); + exit; + } + SendSQL("UPDATE products " . + "SET defaultmilestone = " . SqlQuote($defaultmilestone) . + "WHERE product=" . SqlQuote($productold)); + print "Updated default milestone.
\n"; + } + my $qp = SqlQuote($product); my $qpold = SqlQuote($productold); -- cgit v1.2.3-24-g4f1b
Version:
Edit components: