[interchange-cvs] interchange - heins modified 2 files

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Mon Apr 11 19:36:50 EDT 2005


User:      heins
Date:      2005-04-11 23:36:50 GMT
Modified:  dist/lib/UI/pages/admin meta_editor.html
Added:     code/JavaScriptCheck required.jsc
Log:
* Add sample "required" JavaScriptCheck and meta_editor support.

Revision  Changes    Path
1.1                  interchange/code/JavaScriptCheck/required.jsc


rev 1.1, prev_rev 1.0
Index: required.jsc
===================================================================
CodeDef required  JavaScriptCheck  1
CodeDef required  Description Javascript check for non-blank
CodeDef required  Routine <<EOR
sub {
	my $opt = shift;

	use vars qw/$Tag/;

	my $name = $opt->{name};
	my $fn = $opt->{form_name} || 'flex_editor';
	my $rn = $opt->{js_check_name} || "${fn}_${name}_required";
	my $lab = $opt->{label};

	$lab ||= $name;

	my $exist = $opt->{prepend} || '';
	my $undef_message = $Tag->jsq(
							errmsg(
								"%s (%s): requires entry, currently %s", 
								$lab, $name, errmsg('undefined'),
								)
							);
	my $blank_message = $Tag->jsq(
							errmsg(
								"%s (%s): requires entry, currently %s", 
								$lab, $name, errmsg('blank'),
								)
							);
	my $whitespace_message = $Tag->jsq(
							errmsg(
								"%s (%s): requires entry, currently %s", 
								$lab, $name, errmsg('whitespace'),
								)
							);
	my $script = <<EOS;
<script>
	function $rn (el, frm) {
		var nm = el.name;
		if(el.value == undefined) {
			alert($undef_message);
			return false;
		}
		if(el.value.length == 0) {
			alert($blank_message);
			return false;
		}
		if(el.value.match(/^\\s*\$/)) {
			alert($whitespace_message);
			return false;
		}
		return true;
	}
</script>
EOS

	if($exist) {
		$opt->{prepend} = "$script\n$exist";
	}
	else {
		$opt->{prepend} = $script;
	}

	my $call = "$rn(this,this.form)";
	if(my $ejs = $opt->{js}) {
		if($ejs =~ s{(^|\s+)onchange\s*=\s*"(.*)"}{
						my $pre = $1;
						my $ex = $2;
						qq[${pre}onBlur="if($call) { $ex }"];

						}ie
			)
		{
			$opt->{js} = $ejs;
		}
		else {
			$opt->{js} =~ s/\s+$//;
			$opt->{js} .= qq{ onBlur="$call"};
		}
	}
	else {
		$opt->{js} = qq{ onBlur="$call"};
	}
	return;
}
EOR



2.15      +6 -1      interchange/dist/lib/UI/pages/admin/meta_editor.html


rev 2.15, prev_rev 2.14
Index: meta_editor.html
===================================================================
RCS file: /var/cvs/interchange/dist/lib/UI/pages/admin/meta_editor.html,v
retrieving revision 2.14
retrieving revision 2.15
diff -u -r2.14 -r2.15
--- meta_editor.html	21 Jul 2004 21:21:24 -0000	2.14
+++ meta_editor.html	11 Apr 2005 23:36:50 -0000	2.15
@@ -93,6 +93,7 @@
 	   help
 	   help_url
 	   extended.check
+	   extended.js_check
 	   extended.maxlength
 
 	   =Database lookup
@@ -139,6 +140,7 @@
 	options	=> {
 		'extended.ui_sort_option' => qq{=--default--,f=Case insensitive, fr=Case insensitive/Reverse, n=Numeric, nr=Reverse Numeric},
 		'field' => qq{columns::$m_table},
+		'extended.js_check' => qq{codedef::JavascriptCheck},
 	},
 
 	filter => {
@@ -172,6 +174,7 @@
 		'extended.lookup_merge' => 'SQL for options merge',
 		'extended.maxlength' => 'Maxlength',
 		'extended.check' => 'Profile check',
+		'extended.js_check' => 'JavascriptCheck',
 		'extended.blank_default' => 'Default value',
 		'extended.restrict_allow' => 'Allow these ITL tags',
 		'display_filter' => 'Display filter',
@@ -182,6 +185,7 @@
 		'extended.maxlength' => 'For text widget (HTML maxlength=NN)',
 		'extended.blank_default' => 'Applies only when empty',
 		'extended.check' => 'Standard IC mv_profile checks -- required, postcode, etc.',
+		'extended.js_check' => 'Javascript immediate checks -- required, etc.',
 		'extended.restrict_allow' => 'in append/prepend/lookup_query',
 		'display_filter' => 'Only used for hidden_text type',
 	},
@@ -194,6 +198,7 @@
 		'extended.fs_data_calc' => 'textarea_4_70',
 		'extended.maxlength' => 'text_4',
 		'extended.check' => 'textarea_2_50',
+		'extended.js_check' => 'checkbox_nbsp',
 	},
 	);
 
@@ -271,4 +276,4 @@
 	][/table-editor]
 
 @_UI_STD_FOOTER_@
-<!-- page: @@MV_PAGE@@ version: $Revision: 2.14 $ -->
+<!-- page: @@MV_PAGE@@ version: $Revision: 2.15 $ -->








More information about the interchange-cvs mailing list