[interchange-cvs] interchange - racke modified 3 files

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Fri Oct 14 03:42:51 EDT 2005


User:      racke
Date:      2005-10-14 07:42:51 GMT
Modified:  lib/Vend Order.pm
Modified:  .        MANIFEST
Added:     code/OrderCheck exists.oc
Log:
split out exists order check, don't ditch message from OrderCheck routine

Revision  Changes    Path
2.78      +3 -43     interchange/lib/Vend/Order.pm


rev 2.78, prev_rev 2.77
Index: Order.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Order.pm,v
retrieving revision 2.77
retrieving revision 2.78
diff -u -r2.77 -r2.78
--- Order.pm	13 Oct 2005 22:23:59 -0000	2.77
+++ Order.pm	14 Oct 2005 07:42:50 -0000	2.78
@@ -1,6 +1,6 @@
 # Vend::Order - Interchange order routing routines
 #
-# $Id: Order.pm,v 2.77 2005/10/13 22:23:59 mheins Exp $
+# $Id: Order.pm,v 2.78 2005/10/14 07:42:50 racke Exp $
 #
 # Copyright (C) 2002-2003 Interchange Development Group
 # Copyright (C) 1996-2002 Red Hat, Inc.
@@ -29,7 +29,7 @@
 package Vend::Order;
 require Exporter;
 
-$VERSION = substr(q$Revision: 2.77 $, 10);
+$VERSION = substr(q$Revision: 2.78 $, 10);
 
 @ISA = qw(Exporter);
 
@@ -207,46 +207,6 @@
 							}
 							return (1, $name, '');
 						},
-	'exists'			=> sub {
-							my($name, $value, $code) = @_;
-
-							$code =~ s/(\w+)(:+(\w+))?\s*//;
-							my $tab = $1
-								or return (0, $name, errmsg("no table specified"));
-							my $col = $3;
-							my $msg = $code;
-
-							my $db = database_exists_ref($tab)
-								or do {
-									$msg = errmsg(
-										"Table %s doesn't exist",
-										$tab,
-									);
-									return(0, $name, $msg);
-								};
-							my $used;
-							if(! $col) {
-								$used = $db->record_exists($value);
-							}
-							else {
-#::logDebug("Doing foreign key check, tab=$tab col=$col value=$value");
-								$used = $db->foreign($value, $col);
-							}
-
-#::logDebug("Checking exists, tab=$tab col=$col, used=$used");
-							if($used) {
-								return (1, $name, '');
-							}
-							else {
-								$msg = errmsg(
-										"Key %s does not exist in %s, try again.",
-										$value,
-										$tab,
-									) unless $msg;
-								return(0, $name, $msg);
-							}
-
-						},
 	'unique'			=> sub {
 							my($name, $value, $code) = @_;
 
@@ -380,7 +340,7 @@
 
 	@return = $sub->(@args);
 
-	if(! $return[0] and $message) {
+	if(! $return[0] and ! $return[2] and $message) {
 		$return[2] = $message;
 	}
 	return @return;



1.1                  interchange/code/OrderCheck/exists.oc


rev 1.1, prev_rev 1.0
Index: exists.oc
===================================================================
# Copyright 2005 Interchange Development Group (http://www.icdevgroup.org/)
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: exists.oc,v 1.1 2005/10/14 07:42:50 racke Exp $

CodeDef exists OrderCheck 1
CodeDef exists Routine <<EOR
sub {
	my($ref, $name, $value, $code) = @_;

	$code =~ s/(\w+)(:+(\w+))?\s*//;
	my $tab = $1
		or return (0, $name, errmsg("no table specified"));
	my $col = $3;
	my $msg = $code;

	my $db = database_exists_ref($tab)
		or do {
			$msg = errmsg(
						  "Table %s doesn't exist",
						  $tab,
						 );
			return(0, $name, $msg);
		};

	my $used;
	if(! $col) {
		$used = $db->record_exists($value);
	}
	else {
		#::logDebug("Doing foreign key check, tab=$tab col=$col value=$value");
		$used = $db->foreign($value, $col);
	}

	#::logDebug("Checking exists, tab=$tab col=$col, used=$used");
	if($used) {
		return (1, $name, '');
	}
	else {
		$msg = errmsg(
					  "Key %s does not exist in %s, try again.",
					  $value,
					  $tab,
					 ) unless $msg;
		return(0, $name, $msg);
	}

}
EOR


2.178     +1 -0      interchange/MANIFEST


rev 2.178, prev_rev 2.177
Index: MANIFEST
===================================================================
RCS file: /var/cvs/interchange/MANIFEST,v
retrieving revision 2.177
retrieving revision 2.178
diff -u -r2.177 -r2.178
--- MANIFEST	13 Oct 2005 20:15:04 -0000	2.177
+++ MANIFEST	14 Oct 2005 07:42:51 -0000	2.178
@@ -84,6 +84,7 @@
 code/Filter/zerofix.filter
 code/JavaScriptCheck/required.jsc
 code/OrderCheck/email_only.oc
+code/OrderCheck/exists.oc
 code/OrderCheck/relative_filename.oc
 code/SystemTag/accessories.coretag
 code/SystemTag/accounting.coretag








More information about the interchange-cvs mailing list