Date:   Monday December 23, 2002 @ 14:05
Author: matt

Update of /home/cvs/AxKit-XSP-PerForm
In directory ted.sergeant.org:/tmp/cvs-serv8061

Modified Files:
        Changes PerForm.pm 
Log Message:
More 1.7 changes
Log:
Submitted by:   
Reviewed by:    
PR:


Index: Changes
===================================================================
RCS file: /home/cvs/AxKit-XSP-PerForm/Changes,v
retrieving revision 1.4
retrieving revision 1.5
diff -b -u -r1.4 -r1.5
--- Changes     2002/11/02 15:31:46     1.4
+++ Changes     2002/12/23 14:05:42     1.5
@@ -2,6 +2,12 @@
 
 1.7
     - Patch from nachoman to finally properly support single and multiple select
+    - Patch from Mark Hershberger fixing:
+      - If the error message contains the word "at", everything
+        from that "at" to the end of the error is deleted.
+      - If a load_* function is defined, then the submit_*
+        functions get the value that load_* provides rather than
+        what was submitted.
 
 1.6
     - Removed action from form to allow it to work with Session taglib
Index: PerForm.pm
===================================================================
RCS file: /home/cvs/AxKit-XSP-PerForm/PerForm.pm,v
retrieving revision 1.12
retrieving revision 1.13
diff -b -u -r1.12 -r1.13
--- PerForm.pm  2002/11/02 15:31:46     1.12
+++ PerForm.pm  2002/12/23 14:05:42     1.13
@@ -1,8 +1,8 @@
-# $Id: PerForm.pm,v 1.12 2002/11/02 15:31:46 matt Exp $
+# $Id: PerForm.pm,v 1.13 2002/12/23 14:05:42 matt Exp $
 
 package AxKit::XSP::PerForm;
 
-$VERSION = "1.6";
+$VERSION = "1.7";
 
 use AxKit 1.4;
 use Apache;
@@ -169,15 +169,14 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         $params->{$name.$index} = "${package}::load_${name}"->($ctxt, $default, 
$params->{$name.$index}, $index);
     }
-    elsif (!$params->{'__submitting'}) {
+    else{ 
         $params->{$name.$index} = $default;
     }
     
@@ -287,6 +286,7 @@
 sub checkbox ($;$$$$) {
     my ($name, $value, $checked, $label, $index) = @_;
     my ($package) = caller;
+    $value = 1 unless $value;
     
     no strict 'refs';
     
@@ -304,19 +304,16 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
-    $value = 1 unless $value;
-    
     # load
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         my @vals = "${package}::load_${name}"->($ctxt, $params->{$name.$index}, 
$index);
         $checked = shift @vals;
         $value = shift @vals if @vals;
     }
-    elsif ($params->{'__submitting'}) {
+    else {
         $checked = 1 if defined($params->{$name.$index});
     }
     
@@ -378,15 +375,14 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         $params->{$name} = "${package}::load_${name}"->($ctxt, $value, 
$params->{$name});
     }
-    elsif (!$params->{'__submitting'}) {
+    else {
         $params->{$name} = $value;
     }
     
@@ -437,6 +433,7 @@
     my $params = $ctxt->{Form};
     
     my $error;
+    my ($selected, @options);
     
     # validate
     if ($params->{'__submitting'}) {
@@ -446,13 +443,11 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    my ($selected, @options);
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         ($selected, @options) = "${package}::load_${name}"->($ctxt, 
[$params->get($name.$index)], $default, $index);
     }
     elsif (!$params->{'__submitting'}) {
@@ -507,15 +502,14 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         $params->{$name.$index} = "${package}::load_${name}"->($ctxt, $default, 
$params->{$name,$index}, $index);
     }
-    elsif (!$params->{'__submitting'}) {
+    else {
         $params->{$name.$index} = $default;
     }
     
@@ -557,6 +551,7 @@
     my $params = $ctxt->{Form};
     
     my $error;
+    my ($selected, @options);
     
     # validate
     if ($params->{'__submitting'}) {
@@ -566,13 +561,11 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    my ($selected, @options);
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         ($selected, @options) = "${package}::load_${name}"->($ctxt, 
$params->{$name.$index}, $default, $index);
     }
     elsif (!$params->{'__submitting'}) {
@@ -626,15 +619,14 @@
             };
             $error = $@;
             $ctxt->{_Failed}++ if $error;
-            $error =~ s/ at .*? line \d+\.$//;
+            $error =~ s/(.*) at .*? line \d+\.$/$1/;
         }
     }
-    
     # load
-    if (defined &{"${package}::load_${name}"}) {
+    elsif (defined &{"${package}::load_${name}"}) {
         $params->{$name.$index} = "${package}::load_${name}"->($ctxt, $default, 
$params->{$name.$index}, $index);
     }
-    elsif (!$params->{'__submitting'}) {
+    else {
         $params->{$name.$index} = $default;
     }
     

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to