]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Revert "Bug 1230932 - Providing a condition as an ID to the webservice results in...
authorDavid Lawrence <dkl@mozilla.com>
Tue, 22 Dec 2015 20:57:02 +0000 (20:57 +0000)
committerDavid Lawrence <dkl@mozilla.com>
Tue, 22 Dec 2015 20:57:02 +0000 (20:57 +0000)
This reverts commit eb1357fe03bb47cdd479cf533022e11dd6bd22e0.

Bugzilla/API/1_0/Constants.pm
Bugzilla/API/1_0/Util.pm
Bugzilla/WebService/Bug.pm
Bugzilla/WebService/Constants.pm
Bugzilla/WebService/Util.pm
template/en/default/global/code-error.html.tmpl

index f90b311777e5be6fd66d35d1a36a3dba9174da44..44e20124ad82048036afbb6f747e44439f4f45c7 100644 (file)
@@ -68,8 +68,6 @@ use constant WS_ERROR_CODE => {
     number_too_large            => 54,
     number_too_small            => 55,
     illegal_date                => 56,
-    param_integer_required      => 57, 
-    param_integer_array_required => 58,
     # Bug errors usually occupy the 100-200 range.
     improper_bug_id_field_value => 100,
     bug_id_does_not_exist       => 101,
index 3fcf28cdf45133b562878d807e19d92259ab0bcd..d22935f6eb429545e34132c5b954cefff22382b0 100644 (file)
@@ -22,7 +22,6 @@ use MIME::Base64 qw(decode_base64 encode_base64);
 use Storable qw(dclone);
 use Test::Taint ();
 use URI::Escape qw(uri_unescape);
-use Bugzilla::WebService::Util qw(validate);
 
 use parent qw(Exporter);
 
@@ -242,6 +241,28 @@ sub api_include_exclude {
     return $params;
 }
 
+sub validate  {
+    my ($self, $params, @keys) = @_;
+
+    # If $params is defined but not a reference, then we weren't
+    # sent any parameters at all, and we're getting @keys where
+    # $params should be.
+    return ($self, undef) if (defined $params and !ref $params);
+
+    # If @keys is not empty then we convert any named
+    # parameters that have scalar values to arrayrefs
+    # that match.
+    foreach my $key (@keys) {
+        if (exists $params->{$key}) {
+            $params->{$key} = ref $params->{$key}
+                              ? $params->{$key}
+                              : [ $params->{$key} ];
+        }
+    }
+
+    return ($self, $params);
+}
+
 sub translate {
     my ($params, $mapped) = @_;
     my %changes;
index 75a0aab0e72b130acfa8e218044b3a68c08809ec..84f209347027d6295cd02441917524f8f9e086b4 100644 (file)
@@ -1200,10 +1200,6 @@ sub update_comment_tags {
                           { function => 'Bug.update_comment_tags',
                             param    => 'comment_id' });
 
-    ThrowCodeError("param_integer_required", { function => 'Bug.update_comment_tags',
-                                               param => 'comment_id' })
-      unless $comment_id =~ /^[0-9]+$/;
-
     my $comment = Bugzilla::Comment->new($comment_id)
         || return [];
     $comment->bug->check_is_visible();
index 8c9bcb37fa83f8df3d6e005184dea7fac5fc4399..42aa600ee40a4cce81ff4366c7c6f035b4089a57 100644 (file)
@@ -69,8 +69,6 @@ use constant WS_ERROR_CODE => {
     number_too_large            => 54,
     number_too_small            => 55,
     illegal_date                => 56,
-    param_integer_required      => 57,
-    param_integer_array_required => 58,
     # Bug errors usually occupy the 100-200 range.
     improper_bug_id_field_value => 100,
     bug_id_does_not_exist       => 101,
index 503246c16d65dc2ea62d840c88a443010be46e7b..cbbc47921ad4e726b647f6c872687b7c70127a1f 100644 (file)
@@ -18,7 +18,6 @@ use Bugzilla::WebService::Constants;
 
 use Storable qw(dclone);
 use URI::Escape qw(uri_unescape);
-use List::MoreUtils qw(all any);
 
 use parent qw(Exporter);
 
@@ -222,8 +221,7 @@ sub validate  {
     # sent any parameters at all, and we're getting @keys where
     # $params should be.
     return ($self, undef) if (defined $params and !ref $params);
-
-    my @id_params = qw( ids comment_ids );
+    
     # If @keys is not empty then we convert any named 
     # parameters that have scalar values to arrayrefs
     # that match.
@@ -232,12 +230,6 @@ sub validate  {
             $params->{$key} = ref $params->{$key} 
                               ? $params->{$key} 
                               : [ $params->{$key} ];
-
-            if (any { $key eq $_ } @id_params) {
-                my $ids = $params->{$key};
-                ThrowCodeError('param_integer_array_required', { param => $key })
-                  unless ref($ids) eq 'ARRAY' && all { /^[0-9]+$/ } @$ids;
-            }
         }
     }
 
index f268833b05932e30f2e1903b8d8bee0d181a7202..a242c74712ce472dac507f917aec74c473481f1a 100644 (file)
     a <code>[% param FILTER html %]</code> argument, and that
     argument was not set.
 
-  [% ELSIF error == "param_integer_required" %]
-    The function <code>[% function FILTER html %]</code> requires
-    that <code>[% param FILTER html %]</code> be an integer.
-
-  [% ELSIF error == "param_integer_array_required" %]
-    The <code>[% param FILTER html %]</code> parameter must be an array of integers.
-
   [% ELSIF error == "params_required" %]
     [% title = "Missing Parameter" %]
     The function <code>[% function FILTER html %]</code> requires