[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