[interchange-cvs] interchange - docelic modified 76 files
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Tue Oct 19 06:03:54 EDT 2004
User: docelic
Date: 2004-10-19 10:03:54 GMT
Modified: lib/Vend Interpolate.pm
Modified: code/Filter convert_date.filter date2time.filter
Modified: encrypt.filter lc.filter line.filter
Modified: linkdecode.filter md5.filter next_sequential.filter
Modified: qb_safe.filter
Added: code/Filter alpha.filter alphanumeric.filter
Added: backslash.filter bold.filter calculated.filter
Added: cgi.filter checkbox.filter colons_to_null.filter
Added: commify.filter compress_space.filter crypt.filter
Added: currency.filter date_change.filter
Added: decode_entities.filter digits.filter
Added: digits_dot.filter dos.filter encode_entities.filter
Added: filesafe.filter gate.filter html2text.filter
Added: integer.filter italics.filter large.filter
Added: last_non_null.filter line2options.filter loc.filter
Added: lookup.filter mac.filter mailto.filter
Added: mime_type.filter name.filter namecase.filter
Added: no_white.filter null_to_colons.filter
Added: null_to_comma.filter null_to_space.filter
Added: nullselect.filter option_format.filter
Added: options2line.filter pagefile.filter pgbool.filter
Added: pgbooln.filter pre.filter restrict_html.filter
Added: show_null.filter small.filter space_to_null.filter
Added: sql.filter strftime.filter strikeout.filter
Added: strip.filter tabbed.filter text2html.filter
Added: textarea_get.filter textarea_put.filter tt.filter
Added: uc.filter unix.filter upload.filter
Added: urldecode.filter urlencode.filter value.filter
Added: word.filter yesno.filter zerofix.filter
Log:
* The great filter breakout!
* All filters are now CodeDef definitions in code/Filter/*.
* Besides plain move from Interpolate.pm, changes made to Filter/* include:
* Adding/fixing header/license/cvsid line (all files)
* Indenting (where needed)
* Lowercasing output html (where needed)
* Changes to Interpolate.pm:
* Removed whole %Filter = ( ... )
I tested everything with the new eg/pcode script, and tried re-starting
Interchange and running few filters on test page. Seems OK.
Revision Changes Path
2.224 +2 -415 interchange/lib/Vend/Interpolate.pm
rev 2.224, prev_rev 2.223
Index: Interpolate.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Interpolate.pm,v
retrieving revision 2.223
retrieving revision 2.224
diff -u -r2.223 -r2.224
--- Interpolate.pm 15 Oct 2004 18:35:02 -0000 2.223
+++ Interpolate.pm 19 Oct 2004 10:03:50 -0000 2.224
@@ -1,6 +1,6 @@
# Vend::Interpolate - Interpret Interchange tags
#
-# $Id: Interpolate.pm,v 2.223 2004/10/15 18:35:02 racke Exp $
+# $Id: Interpolate.pm,v 2.224 2004/10/19 10:03:50 docelic Exp $
#
# Copyright (C) 2002-2003 Interchange Development Group
# Copyright (C) 1996-2002 Red Hat, Inc.
@@ -28,7 +28,7 @@
require Exporter;
@ISA = qw(Exporter);
-$VERSION = substr(q$Revision: 2.223 $, 10);
+$VERSION = substr(q$Revision: 2.224 $, 10);
@EXPORT = qw (
@@ -872,419 +872,6 @@
#The most common , don't enter a block, no accoutrements
return ed(database_field($selector,$key,$field,$opt->{foreign}));
}
-
-%Filter = (
-
- 'value' => sub { return $::Values->{$_[0]}; },
- 'cgi' => sub { return $CGI::values{$_[0]}; },
- 'filesafe' => sub {
- return Vend::Util::escape_chars(shift);
- },
- 'calculated' => sub {
- my ($val, $tag, $table, $column, $key, $indirect) = @_;
- $key = $CGI::values{$indirect}
- if $indirect;
- my $code = tag_data($table, $column, $key);
- $code =~ s/\r/\n/g;
-#::logDebug("calculated code=$code");
- $s = $val;
- my $result = $ready_safe->reval($code);
-#::logDebug("calculated result='$result'");
- return $result;
- },
- 'mime_type' => sub {
- return Vend::Util::mime_type(shift);
- },
- 'currency' => sub {
- my ($val, $tag, $locale) = @_;
- my $convert = $locale ? 1 : 0;
- return Vend::Util::currency(
- $val,
- 0,
- $convert,
- { locale => $locale }
- );
- },
- 'mailto' => sub {
- my ($val,$tag, at arg) = @_;
- my $out = qq{<A HREF="mailto:$val">};
- my $anchor = $val;
- if(@arg) {
- $anchor = join " ", @arg;
- }
- $out .= "$anchor</A>";
- },
- 'tt' => sub { return '<TT>' . shift(@_) . '</TT>'; },
- 'pre' => sub { return '<PRE>' . shift(@_) . '</PRE>'; },
- 'bold' => sub { return '<B>' . shift(@_) . '</B>'; },
- 'italics' => sub { return '<I>' . shift(@_) . '</I>'; },
- 'strikeout' => sub { return '<strike>' . shift(@_) . '</strike>'; },
- 'small' => sub { return '<small>' . shift(@_) . '</small>'; },
- 'large' => sub { return '<large>' . shift(@_) . '</large>'; },
- 'commify' => sub {
- my ($val, $tag, $places) = @_;
- $places = 2 unless defined $places;
- $val = sprintf("%.${places}f", $val) if $places;
- return Vend::Util::commify($val);
- },
- 'integer' => sub { return int(shift); },
- 'lookup' => sub {
- my ($val, $tag, $table, $column) = @_;
- return tag_data($table, $column, $val) || $val;
- },
- 'lc' => sub {
- use locale;
- return lc(shift);
- },
- 'uc' => sub {
- use locale;
- return uc(shift);
- },
- 'date_change' => sub {
- my $val = shift;
- $val =~ s/\0+//g;
- return $val
- unless $val =~ m:(\d+)[-/]+(\d+)[-/]+(\d+):;
- my ($yr, $mon, $day);
-
- if (length($1) == 4) {
- # MySQL date style 2003-03-20
- ($yr, $mon, $day) = ($1, $2, $3);
- } else {
- ($yr, $mon, $day) = ($3, $1, $2);
- }
-
- my $time;
- $val =~ /:(\d+)$/
- and $time = $1;
- if(length($yr) < 4) {
- $yr =~ s/^0//;
- $yr = $yr < 50 ? $yr + 2000 : $yr + 1900;
- }
- $mon =~ s/^0//;
- $day =~ s/^0//;
- $val = sprintf("%04d%02d%02d", $yr, $mon, $day);
- return $val unless $time;
- $val .= sprintf('%04d', $time);
- return $val;
- },
- 'checkbox' => sub {
- my $val = shift;
- return length($val) ? $val : '';
- },
- 'compress_space' => sub {
- my $val = shift;
- $val =~ s/\s+$//g;
- $val =~ s/^\s+//g;
- $val =~ s/\s+/ /g;
- return $val;
- },
- 'null_to_space' => sub {
- my $val = shift;
- $val =~ s/\0+/ /g;
- return $val;
- },
- 'null_to_comma' => sub {
- my $val = shift;
- $val =~ s/\0+/,/g;
- return $val;
- },
- 'null_to_colons' => sub {
- my $val = shift;
- $val =~ s/\0+/::/g;
- return $val;
- },
- 'space_to_null' => sub {
- my $val = shift;
- $val =~ s/\s+/\0/g;
- return $val;
- },
- 'colons_to_null' => sub {
- my $val = shift;
- $val =~ s/::/\0/g;
- return $val;
- },
- 'last_non_null' => sub {
- my @some = reverse split /\0+/, shift;
- for(@some) {
- return $_ if length $_;
- }
- return '';
- },
- 'line2options' => sub {
- my ($value, $tag, $delim) = @_;
- return $value unless length $value;
- $value =~ s/\s+$//;
- $value =~ s/^\s+//;
- my @opts = split /[\r\n]+/, $value;
- for(@opts) {
- s/^\s+//;
- s/[,\s]+$//;
- s/,/,/g;
- }
- return join ",", @opts;
- },
- 'options2line' => sub {
- my ($value, $tag, $delim) = @_;
- return $value unless length $value;
- $value =~ s/\s+$//;
- $value =~ s/^\s+//;
- my @opts = split /\s*,\s*/, $value;
- for(@opts) {
- s/,/,/g;
- }
- $value = return join "\n", @opts;
- return $value;
- },
- 'option_format' => sub {
- my ($value, $tag, $delim) = @_;
-
- return $value unless $value =~ /\0.*\0/s;
-
- my $scrubcommas;
- if(! length($delim) ) {
- $delim = ',';
- $scrubcommas = 1;
- }
- else {
- $delim =~ /pipe/i and $delim = '|'
- or
- $delim =~ /semicolon/i and $delim = ';'
- or
- $delim =~ /colon/i and $delim = ':'
- or
- $delim =~ /null/i and $delim = "\0"
- ;
- }
-
- my @opts = split /\0/, $value;
- my @out;
-
- while(@opts) {
- my ($v, $l, $d) = splice @opts, 0, 3;
- $l = length($l) ? "=$l" : '';
- $l =~ s/,/,/g if $scrubcommas;
- $d = $d ? '*' : '';
- next unless length("$v$l");
- push @out, "$v$l$d";
- }
- return join $delim, @out;
- },
- 'nullselect' => sub {
- my @some = split /\0+/, shift;
- for(@some) {
- return $_ if length $_;
- }
- return '';
- },
- 'tabbed' => sub {
- my @items = split /\r?\n/, shift;
- return join "\t", @items;
- },
- 'digits_dot' => sub {
- my $val = shift;
- $val =~ s/[^\d.]+//g;
- return $val;
- },
- 'backslash' => sub {
- my $val = shift;
- $val =~ s/\\+//g;
- return $val;
- },
- 'crypt' => sub {
- my $val = shift;
- return crypt($val, random_string(2));
- },
- 'html2text' => sub {
- my $val = shift;
- $val =~ s|\s*<BR>\s*|\n|gi;
- $val =~ s|\s*<P>\s*|\n|gi;
- $val =~ s|\s*</P>\s*||gi;
- return $val;
- },
- 'upload' => sub {
- my ($fn, $vn) = @_;
- if( tag_value_extended($vn, { test => 'isfile', })) {
- return tag_value_extended($vn, { file_contents => 1 });
- }
- else {
- return $fn;
- }
- },
- 'namecase' => sub {
- use locale;
- my $val = shift;
- $val =~ s/([A-Z]\w+)/\L\u$1/g;
- return $val;
- },
- 'name' => sub {
- my $val = shift;
- return $val unless $val =~ /,/;
- my($last, $first) = split /\s*,\s*/, $val, 2;
- return "$first $last";
- },
- 'digits' => sub {
- my $val = shift;
- $val =~ s/\D+//g;
- return $val;
- },
- 'alpha' => sub {
- my $val = shift;
- $val =~ s/[^A-Za-z]+//g;
- return $val;
- },
- 'alphanumeric' => sub {
- my $val = shift;
- $val =~ s/[^A-Za-z0-9]+//g;
- return $val;
- },
- 'word' => sub {
- my $val = shift;
- $val =~ s/\W+//g;
- return $val;
- },
- 'unix' => sub {
- my $val = shift;
- $val =~ s/\r\n|\r/\n/g;
- return $val;
- },
- 'dos' => sub {
- my $val = shift;
- $val =~ s/\r?\n/\r\n/g;
- return $val;
- },
- 'mac' => sub {
- my $val = shift;
- $val =~ s/\r?\n|\r\n?/\r/g;
- return $val;
- },
- 'gate' => sub {
- my ($val, $var) = @_;
- return '' unless $::Scratch->{$var};
- return $val;
- },
- 'no_white' => sub {
- my $val = shift;
- $val =~ s/\s+//g;
- return $val;
- },
- 'strip' => sub {
- my $val = shift;
- $val =~ s/^\s+//;
- $val =~ s/\s+$//;
- return $val;
- },
- 'sql' => sub {
- my $val = shift;
- $val =~ s:':'':g; # '
- return $val;
- },
- 'textarea_put' => sub {
- my $val = shift;
- $val =~ s/\&/\&/g;
- $val =~ s/\[/[/g;
- $val =~ s/</</g;
- return $val;
- },
- 'textarea_get' => sub {
- my $val = shift;
- $val =~ s/\&/\&/g;
- return $val;
- },
- 'text2html' => sub {
- my $val = shift;
- $val =~ s!\r?\n\r?\n!<P>!g;
- $val =~ s!\r\r!<P>!g;
- $val =~ s!\r?\n!<BR>!g;
- $val =~ s!\r!<BR>!g;
- return $val;
- },
- 'urldecode' => sub {
- my $val = shift;
- $val =~ s|\%([a-fA-F0-9][a-fA-F0-9])|chr(hex($1))|eg;
- return $val;
- },
- 'urlencode' => sub {
- my $val = shift;
- $val =~ s|([^\w:])|sprintf "%%%02x", ord $1|eg;
- return $val;
- },
- 'pagefile' => sub {
- $_[0] =~ s:^[./]+::;
- return $_[0];
- },
- 'strftime' => sub {
- my $time = shift(@_);
- shift(@_);
- my $fmt = shift(@_);
- while(my $add = shift(@_)) {
- $fmt .= " $add";
- }
- if($fmt) {
- return POSIX::strftime($fmt, localtime($time));
- }
- else {
- return scalar localtime($time);
- }
- },
- 'encode_entities' => sub {
- return HTML::Entities::encode(shift, $ESCAPE_CHARS::std);
- },
- 'decode_entities' => sub {
- return HTML::Entities::decode(shift);
- },
- encrypt => sub {
- my ($val, $tag, $key) = @_;
- return Vend::Order::pgp_encrypt($val, $key);
- },
- 'yesno' => sub {
- my $val = shift(@_) ? 'Yes' : 'No';
- return $val unless $Vend::Cfg->{Locale};
- return $val unless defined $Vend::Cfg->{Locale}{$val};
- return $Vend::Cfg->{Locale}{$val};
- },
-
- show_null => sub {
- my $val = shift;
- $val =~ s/\0/\\0/g;
- return $val;
- },
-
- loc => sub {
- my $val = shift;
- return errmsg($val);
- },
-
- restrict_html => sub {
- my $val = shift;
- shift;
- my %allowed;
- $allowed{lc $_} = 1 for @_;
- $val =~ s{<(/?(\w[-\w]*)[\s>])}
- { ($allowed{lc $2} ? '<' : '<') . $1 }ge;
- return $val;
- },
-
- zerofix => sub {
- $_[0] =~ /^0*(.*)/; return $1;
- },
-
- pgbool => sub {
- my $val = shift;
- return 'f' if ! defined($val);
- $val =~ s/\s+//g;
- return 'f' if $val =~ /^(?:0|f(?:alse)?)?$/i;
- return 't';
- },
-
- pgbooln => sub {
- my $val = shift;
- return if ! defined($val);
- $val =~ s/\s+//g;
- return 'f' if $val =~ /^(?:0|f(?:alse)?)?$/i;
- return 't';
- },
- );
$Filter{upper} = $Filter{uc};
$Filter{lower} = $Filter{lc};
1.3 +5 -0 interchange/code/Filter/convert_date.filter
rev 1.3, prev_rev 1.2
Index: convert_date.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/convert_date.filter,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- convert_date.filter 22 Feb 2004 19:56:25 -0000 1.2
+++ convert_date.filter 19 Oct 2004 10:03:51 -0000 1.3
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: convert_date.filter,v 1.3 2004/10/19 10:03:51 docelic Exp $
+
CodeDef convert_date Filter
CodeDef convert_date Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/date2time.filter
rev 1.2, prev_rev 1.1
Index: date2time.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/date2time.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- date2time.filter 1 Feb 2002 04:21:46 -0000 1.1
+++ date2time.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: date2time.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef date2time Filter
CodeDef date2time Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/encrypt.filter
rev 1.2, prev_rev 1.1
Index: encrypt.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/encrypt.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- encrypt.filter 13 Jan 2003 23:16:14 -0000 1.1
+++ encrypt.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: encrypt.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef encrypt Filter
CodeDef encrypt Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/lc.filter
rev 1.2, prev_rev 1.1
Index: lc.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/lc.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- lc.filter 29 Jan 2002 05:52:37 -0000 1.1
+++ lc.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: lc.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef lc Filter
CodeDef lc Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/line.filter
rev 1.2, prev_rev 1.1
Index: line.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/line.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- line.filter 7 Mar 2003 12:57:30 -0000 1.1
+++ line.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: line.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef line Filter
CodeDef line Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/linkdecode.filter
rev 1.2, prev_rev 1.1
Index: linkdecode.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/linkdecode.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linkdecode.filter 13 Jan 2003 23:16:14 -0000 1.1
+++ linkdecode.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: linkdecode.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef linkdecode Filter
CodeDef linkdecode Routine <<EOR
sub {
1.2 +5 -0 interchange/code/Filter/md5.filter
rev 1.2, prev_rev 1.1
Index: md5.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/md5.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- md5.filter 10 Dec 2003 03:30:56 -0000 1.1
+++ md5.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,3 +1,8 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: md5.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef md5 Filter
CodeDef md5 Routine <<EOR
1.2 +5 -1 interchange/code/Filter/next_sequential.filter
rev 1.2, prev_rev 1.1
Index: next_sequential.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/next_sequential.filter,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- next_sequential.filter 14 Oct 2002 21:35:02 -0000 1.1
+++ next_sequential.filter 19 Oct 2004 10:03:51 -0000 1.2
@@ -1,4 +1,8 @@
-## $Id: next_sequential.filter,v 1.1 2002/10/14 21:35:02 mheins Exp $
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: next_sequential.filter,v 1.2 2004/10/19 10:03:51 docelic Exp $
+
CodeDef next_sequential Filter
CodeDef next_sequential Routine <<EOR
sub {
1.3 +6 -0 interchange/code/Filter/qb_safe.filter
rev 1.3, prev_rev 1.2
Index: qb_safe.filter
===================================================================
RCS file: /var/cvs/interchange/code/Filter/qb_safe.filter,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- qb_safe.filter 3 Jul 2003 02:24:07 -0000 1.2
+++ qb_safe.filter 19 Oct 2004 10:03:51 -0000 1.3
@@ -1,6 +1,12 @@
+# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
+# Copyright 1996-2002 Red Hat, Inc.
+# Licensed under the GNU GPL v2. See file LICENSE for details.
+# $Id: qb_safe.filter,v 1.3 2004/10/19 10:03:51 docelic Exp $
+
# QuickBooks Safe: make data safe for quickbooks
# QB will crash at the drop of a hat, so don't forget to remove
# any unfriendly characters.
+
CodeDef qb_safe Filter
CodeDef qb_safe Routine <<EOR
sub {
1.1 interchange/code/Filter/alpha.filter
rev 1.1, prev_rev 1.0
Index: alpha.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: alpha.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef alpha Filter
CodeDef alpha Routine <<EOR
sub {
my $val = shift;
$val =~ s/[^A-Za-z]+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/alphanumeric.filter
rev 1.1, prev_rev 1.0
Index: alphanumeric.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: alphanumeric.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef alphanumeric Filter
CodeDef alphanumeric Routine <<EOR
sub {
my $val = shift;
$val =~ s/[^A-Za-z0-9]+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/backslash.filter
rev 1.1, prev_rev 1.0
Index: backslash.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: backslash.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef backslash Filter
CodeDef backslash Routine <<EOR
sub {
my $val = shift;
$val =~ s/\\+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/bold.filter
rev 1.1, prev_rev 1.0
Index: bold.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: bold.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef bold Filter
CodeDef bold Routine <<EOR
sub {
return '<b>' . shift(@_) . '</b>';
}
EOR
1.1 interchange/code/Filter/calculated.filter
rev 1.1, prev_rev 1.0
Index: calculated.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: calculated.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef calculated Filter
CodeDef calculated Routine <<EOR
sub {
my ($val, $tag, $table, $column, $key, $indirect) = @_;
$key = $CGI::values{$indirect}
if $indirect;
my $code = tag_data($table, $column, $key);
$code =~ s/\r/\n/g;
#::logDebug("calculated code=$code");
$s = $val;
my $result = $ready_safe->reval($code);
#::logDebug("calculated result='$result'");
return $result;
}
EOR
1.1 interchange/code/Filter/cgi.filter
rev 1.1, prev_rev 1.0
Index: cgi.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: cgi.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef cgi Filter
CodeDef cgi Routine <<EOR
sub {
return $CGI::values{$_[0]};
}
EOR
1.1 interchange/code/Filter/checkbox.filter
rev 1.1, prev_rev 1.0
Index: checkbox.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: checkbox.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef checkbox Filter
CodeDef checkbox Routine <<EOR
sub {
my $val = shift;
return length($val) ? $val : '';
}
EOR
1.1 interchange/code/Filter/colons_to_null.filter
rev 1.1, prev_rev 1.0
Index: colons_to_null.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: colons_to_null.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef colons_to_null Filter
CodeDef colons_to_null Routine <<EOR
sub {
my $val = shift;
$val =~ s/::/\0/g;
return $val;
}
EOR
1.1 interchange/code/Filter/commify.filter
rev 1.1, prev_rev 1.0
Index: commify.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: commify.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef commify Filter
CodeDef commify Routine <<EOR
sub {
my ($val, $tag, $places) = @_;
$places = 2 unless defined $places;
$val = sprintf("%.${places}f", $val) if $places;
return Vend::Util::commify($val);
}
EOR
1.1 interchange/code/Filter/compress_space.filter
rev 1.1, prev_rev 1.0
Index: compress_space.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: compress_space.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef compress_space Filter
CodeDef compress_space Routine <<EOR
sub {
my $val = shift;
$val =~ s/\s+$//g;
$val =~ s/^\s+//g;
$val =~ s/\s+/ /g;
return $val;
}
EOR
1.1 interchange/code/Filter/crypt.filter
rev 1.1, prev_rev 1.0
Index: crypt.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: crypt.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef crypt Filter
CodeDef crypt Routine <<EOR
sub {
my $val = shift;
return crypt($val, random_string(2));
}
EOR
1.1 interchange/code/Filter/currency.filter
rev 1.1, prev_rev 1.0
Index: currency.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: currency.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef currency Filter
CodeDef currency Routine <<EOR
sub {
my ($val, $tag, $locale) = @_;
my $convert = $locale ? 1 : 0;
return Vend::Util::currency($val, 0, $convert, { locale => $locale });
}
EOR
1.1 interchange/code/Filter/date_change.filter
rev 1.1, prev_rev 1.0
Index: date_change.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: date_change.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef date_change Filter
CodeDef date_change Routine <<EOR
sub {
my $val = shift;
$val =~ s/\0+//g;
return $val
unless $val =~ m:(\d+)[-/]+(\d+)[-/]+(\d+):;
my ($yr, $mon, $day);
if (length($1) == 4) {
# MySQL date style 2003-03-20
($yr, $mon, $day) = ($1, $2, $3);
} else {
($yr, $mon, $day) = ($3, $1, $2);
}
my $time;
$val =~ /:(\d+)$/
and $time = $1;
if(length($yr) < 4) {
$yr =~ s/^0//;
$yr = $yr < 50 ? $yr + 2000 : $yr + 1900;
}
$mon =~ s/^0//;
$day =~ s/^0//;
$val = sprintf("%04d%02d%02d", $yr, $mon, $day);
return $val unless $time;
$val .= sprintf('%04d', $time);
return $val;
}
EOR
1.1 interchange/code/Filter/decode_entities.filter
rev 1.1, prev_rev 1.0
Index: decode_entities.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: decode_entities.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef decode_entities Filter
CodeDef decode_entities Routine <<EOR
sub {
return HTML::Entities::decode(shift);
}
EOR
1.1 interchange/code/Filter/digits.filter
rev 1.1, prev_rev 1.0
Index: digits.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: digits.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef digits Filter
CodeDef digits Routine <<EOR
sub {
my $val = shift;
$val =~ s/\D+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/digits_dot.filter
rev 1.1, prev_rev 1.0
Index: digits_dot.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: digits_dot.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef digits_dot Filter
CodeDef digits_dot Routine <<EOR
sub {
my $val = shift;
$val =~ s/[^\d.]+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/dos.filter
rev 1.1, prev_rev 1.0
Index: dos.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: dos.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef dos Filter
CodeDef dos Routine <<EOR
sub {
my $val = shift;
$val =~ s/\r?\n/\r\n/g;
return $val;
}
EOR
1.1 interchange/code/Filter/encode_entities.filter
rev 1.1, prev_rev 1.0
Index: encode_entities.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: encode_entities.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef encode_entities Filter
CodeDef encode_entities Routine <<EOR
sub {
return HTML::Entities::encode(shift, $ESCAPE_CHARS::std);
}
EOR
1.1 interchange/code/Filter/filesafe.filter
rev 1.1, prev_rev 1.0
Index: filesafe.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: filesafe.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef filesafe Filter
CodeDef filesafe Routine <<EOR
sub {
return Vend::Util::escape_chars(shift);
}
EOR
1.1 interchange/code/Filter/gate.filter
rev 1.1, prev_rev 1.0
Index: gate.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: gate.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef gate Filter
CodeDef gate Routine <<EOR
sub {
my ($val, $var) = @_;
return '' unless $::Scratch->{$var};
return $val;
}
EOR
1.1 interchange/code/Filter/html2text.filter
rev 1.1, prev_rev 1.0
Index: html2text.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: html2text.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef html2text Filter
CodeDef html2text Routine <<EOR
sub {
my $val = shift;
$val =~ s|\s*<BR>\s*|\n|gi;
$val =~ s|\s*<P>\s*|\n|gi;
$val =~ s|\s*</P>\s*||gi;
return $val;
}
EOR
1.1 interchange/code/Filter/integer.filter
rev 1.1, prev_rev 1.0
Index: integer.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: integer.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef integer Filter
CodeDef integer Routine <<EOR
sub {
return int(shift);
}
EOR
1.1 interchange/code/Filter/italics.filter
rev 1.1, prev_rev 1.0
Index: italics.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: italics.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef italics Filter
CodeDef italics Routine <<EOR
sub {
return '<i>' . shift(@_) . '</i>';
}
EOR
1.1 interchange/code/Filter/large.filter
rev 1.1, prev_rev 1.0
Index: large.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: large.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef large Filter
CodeDef large Routine <<EOR
sub {
return '<large>' . shift(@_) . '</large>';
}
EOR
1.1 interchange/code/Filter/last_non_null.filter
rev 1.1, prev_rev 1.0
Index: last_non_null.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: last_non_null.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef last_non_null Filter
CodeDef last_non_null Routine <<EOR
sub {
my @some = reverse split /\0+/, shift;
for(@some) {
return $_ if length $_;
}
return '';
}
EOR
1.1 interchange/code/Filter/line2options.filter
rev 1.1, prev_rev 1.0
Index: line2options.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: line2options.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef line2options Filter
CodeDef line2options Routine <<EOR
sub {
my ($value, $tag, $delim) = @_;
return $value unless length $value;
$value =~ s/\s+$//;
$value =~ s/^\s+//;
my @opts = split /[\r\n]+/, $value;
for(@opts) {
s/^\s+//;
s/[,\s]+$//;
s/,/,/g;
}
return join ",", @opts;
}
EOR
1.1 interchange/code/Filter/loc.filter
rev 1.1, prev_rev 1.0
Index: loc.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: loc.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef loc Filter
CodeDef loc Routine <<EOR
sub {
my $val = shift;
return errmsg($val);
}
EOR
1.1 interchange/code/Filter/lookup.filter
rev 1.1, prev_rev 1.0
Index: lookup.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: lookup.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef lookup Filter
CodeDef lookup Routine <<EOR
sub {
my ($val, $tag, $table, $column) = @_;
return tag_data($table, $column, $val) || $val;
}
EOR
1.1 interchange/code/Filter/mac.filter
rev 1.1, prev_rev 1.0
Index: mac.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: mac.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef mac Filter
CodeDef mac Routine <<EOR
sub {
my $val = shift;
$val =~ s/\r?\n|\r\n?/\r/g;
return $val;
}
EOR
1.1 interchange/code/Filter/mailto.filter
rev 1.1, prev_rev 1.0
Index: mailto.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: mailto.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef mailto Filter
CodeDef mailto Routine <<EOR
sub {
my ($val,$tag, at arg) = @_;
my $out = qq{<A HREF="mailto:$val">};
my $anchor = $val;
if(@arg) {
$anchor = join " ", @arg;
}
$out .= "$anchor</A>";
}
EOR
1.1 interchange/code/Filter/mime_type.filter
rev 1.1, prev_rev 1.0
Index: mime_type.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: mime_type.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef mime_type Filter
CodeDef mime_type Routine <<EOR
sub {
return Vend::Util::mime_type(shift);
}
EOR
1.1 interchange/code/Filter/name.filter
rev 1.1, prev_rev 1.0
Index: name.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: name.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef name Filter
CodeDef name Routine <<EOR
sub {
my $val = shift;
return $val unless $val =~ /,/;
my($last, $first) = split /\s*,\s*/, $val, 2;
return "$first $last";
}
EOR
1.1 interchange/code/Filter/namecase.filter
rev 1.1, prev_rev 1.0
Index: namecase.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: namecase.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef namecase Filter
CodeDef namecase Routine <<EOR
sub {
use locale;
my $val = shift;
$val =~ s/([A-Z]\w+)/\L\u$1/g;
return $val;
}
EOR
1.1 interchange/code/Filter/no_white.filter
rev 1.1, prev_rev 1.0
Index: no_white.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: no_white.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef no_white Filter
CodeDef no_white Routine <<EOR
sub {
my $val = shift;
$val =~ s/\s+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/null_to_colons.filter
rev 1.1, prev_rev 1.0
Index: null_to_colons.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: null_to_colons.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef null_to_colons Filter
CodeDef null_to_colons Routine <<EOR
sub {
my $val = shift;
$val =~ s/\0+/::/g;
return $val;
}
EOR
1.1 interchange/code/Filter/null_to_comma.filter
rev 1.1, prev_rev 1.0
Index: null_to_comma.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: null_to_comma.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef null_to_comma Filter
CodeDef null_to_comma Routine <<EOR
sub {
my $val = shift;
$val =~ s/\0+/,/g;
return $val;
}
EOR
1.1 interchange/code/Filter/null_to_space.filter
rev 1.1, prev_rev 1.0
Index: null_to_space.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: null_to_space.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef null_to_space Filter
CodeDef null_to_space Routine <<EOR
sub {
my $val = shift;
$val =~ s/\0+/ /g;
return $val;
}
EOR
1.1 interchange/code/Filter/nullselect.filter
rev 1.1, prev_rev 1.0
Index: nullselect.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: nullselect.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef nullselect Filter
CodeDef nullselect Routine <<EOR
sub {
my @some = split /\0+/, shift;
for(@some) {
return $_ if length $_;
}
return '';
}
EOR
1.1 interchange/code/Filter/option_format.filter
rev 1.1, prev_rev 1.0
Index: option_format.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: option_format.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef option_format Filter
CodeDef option_format Routine <<EOR
sub {
my ($value, $tag, $delim) = @_;
return $value unless $value =~ /\0.*\0/s;
my $scrubcommas;
if(! length($delim) ) {
$delim = ',';
$scrubcommas = 1;
}
else {
$delim =~ /pipe/i and $delim = '|'
or
$delim =~ /semicolon/i and $delim = ';'
or
$delim =~ /colon/i and $delim = ':'
or
$delim =~ /null/i and $delim = "\0"
;
}
my @opts = split /\0/, $value;
my @out;
while(@opts) {
my ($v, $l, $d) = splice @opts, 0, 3;
$l = length($l) ? "=$l" : '';
$l =~ s/,/,/g if $scrubcommas;
$d = $d ? '*' : '';
next unless length("$v$l");
push @out, "$v$l$d";
}
return join $delim, @out;
}
EOR
1.1 interchange/code/Filter/options2line.filter
rev 1.1, prev_rev 1.0
Index: options2line.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: options2line.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef options2line Filter
CodeDef options2line Routine <<EOR
sub {
my ($value, $tag, $delim) = @_;
return $value unless length $value;
$value =~ s/\s+$//;
$value =~ s/^\s+//;
my @opts = split /\s*,\s*/, $value;
for(@opts) {
s/,/,/g;
}
$value = return join "\n", @opts;
return $value;
}
EOR
1.1 interchange/code/Filter/pagefile.filter
rev 1.1, prev_rev 1.0
Index: pagefile.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: pagefile.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef pagefile Filter
CodeDef pagefile Routine <<EOR
sub {
$_[0] =~ s:^[./]+::;
return $_[0];
}
EOR
1.1 interchange/code/Filter/pgbool.filter
rev 1.1, prev_rev 1.0
Index: pgbool.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: pgbool.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef pgbool Filter
CodeDef pgbool Routine <<EOR
sub {
my $val = shift;
return 'f' if ! defined($val);
$val =~ s/\s+//g;
return 'f' if $val =~ /^(?:0|f(?:alse)?)?$/i;
return 't';
}
EOR
1.1 interchange/code/Filter/pgbooln.filter
rev 1.1, prev_rev 1.0
Index: pgbooln.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: pgbooln.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef pgbooln Filter
CodeDef pgbooln Routine <<EOR
sub {
my $val = shift;
return if ! defined($val);
$val =~ s/\s+//g;
return 'f' if $val =~ /^(?:0|f(?:alse)?)?$/i;
return 't';
}
EOR
1.1 interchange/code/Filter/pre.filter
rev 1.1, prev_rev 1.0
Index: pre.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: pre.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef pre Filter
CodeDef pre Routine <<EOR
sub {
return '<pre>' . shift(@_) . '</pre>';
}
EOR
1.1 interchange/code/Filter/restrict_html.filter
rev 1.1, prev_rev 1.0
Index: restrict_html.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: restrict_html.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef restrict_html Filter
CodeDef restrict_html Routine <<EOR
sub {
my $val = shift;
shift;
my %allowed;
$allowed{lc $_} = 1 for @_;
$val =~ s{<(/?(\w[-\w]*)[\s>])}{ ($allowed{lc $2} ? '<' : '<') . $1 }ge;
return $val;
}
EOR
1.1 interchange/code/Filter/show_null.filter
rev 1.1, prev_rev 1.0
Index: show_null.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: show_null.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef show_null Filter
CodeDef show_null Routine <<EOR
sub {
my $val = shift;
$val =~ s/\0/\\0/g;
return $val;
}
EOR
1.1 interchange/code/Filter/small.filter
rev 1.1, prev_rev 1.0
Index: small.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: small.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef small Filter
CodeDef small Routine <<EOR
sub {
return '<small>' . shift(@_) . '</small>';
}
EOR
1.1 interchange/code/Filter/space_to_null.filter
rev 1.1, prev_rev 1.0
Index: space_to_null.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: space_to_null.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef space_to_null Filter
CodeDef space_to_null Routine <<EOR
sub {
my $val = shift;
$val =~ s/\s+/\0/g;
return $val;
}
EOR
1.1 interchange/code/Filter/sql.filter
rev 1.1, prev_rev 1.0
Index: sql.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: sql.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef sql Filter
CodeDef sql Routine <<EOR
sub {
my $val = shift;
$val =~ s:':'':g;
return $val;
}
EOR
1.1 interchange/code/Filter/strftime.filter
rev 1.1, prev_rev 1.0
Index: strftime.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: strftime.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef strftime Filter
CodeDef strftime Routine <<EOR
sub {
my $time = shift(@_);
shift(@_);
my $fmt = shift(@_);
while(my $add = shift(@_)) {
$fmt .= " $add";
}
if($fmt) {
return POSIX::strftime($fmt, localtime($time));
}
else {
return scalar localtime($time);
}
}
EOR
1.1 interchange/code/Filter/strikeout.filter
rev 1.1, prev_rev 1.0
Index: strikeout.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: strikeout.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef strikeout Filter
CodeDef strikeout Routine <<EOR
sub {
return '<strike>' . shift(@_) . '</strike>';
}
EOR
1.1 interchange/code/Filter/strip.filter
rev 1.1, prev_rev 1.0
Index: strip.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: strip.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef strip Filter
CodeDef strip Routine <<EOR
sub {
my $val = shift;
$val =~ s/^\s+//;
$val =~ s/\s+$//;
return $val;
}
EOR
1.1 interchange/code/Filter/tabbed.filter
rev 1.1, prev_rev 1.0
Index: tabbed.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: tabbed.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef tabbed Filter
CodeDef tabbed Routine <<EOR
sub {
my @items = split /\r?\n/, shift;
return join "\t", @items;
}
EOR
1.1 interchange/code/Filter/text2html.filter
rev 1.1, prev_rev 1.0
Index: text2html.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: text2html.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef text2html Filter
CodeDef text2html Routine <<EOR
sub {
my $val = shift;
$val =~ s!\r?\n\r?\n!<p>!g;
$val =~ s!\r\r!<p>!g;
$val =~ s!\r?\n!<br>!g;
$val =~ s!\r!<br>!g;
return $val;
}
EOR
1.1 interchange/code/Filter/textarea_get.filter
rev 1.1, prev_rev 1.0
Index: textarea_get.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: textarea_get.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef textarea_get Filter
CodeDef textarea_get Routine <<EOR
sub {
my $val = shift;
$val =~ s/\&/\&/g;
return $val;
}
EOR
1.1 interchange/code/Filter/textarea_put.filter
rev 1.1, prev_rev 1.0
Index: textarea_put.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: textarea_put.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef textarea_put Filter
CodeDef textarea_put Routine <<EOR
sub {
my $val = shift;
$val =~ s/\&/\&/g;
$val =~ s/\[/[/g;
$val =~ s/</</g;
return $val;
}
EOR
1.1 interchange/code/Filter/tt.filter
rev 1.1, prev_rev 1.0
Index: tt.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: tt.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef tt Filter
CodeDef tt Routine <<EOR
sub {
return '<tt>' . shift(@_) . '</tt>';
}
EOR
1.1 interchange/code/Filter/uc.filter
rev 1.1, prev_rev 1.0
Index: uc.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: uc.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef uc Filter
CodeDef uc Routine <<EOR
sub {
use locale;
return uc(shift);
}
EOR
1.1 interchange/code/Filter/unix.filter
rev 1.1, prev_rev 1.0
Index: unix.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: unix.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef unix Filter
CodeDef unix Routine <<EOR
sub {
my $val = shift;
$val =~ s/\r\n|\r/\n/g;
return $val;
}
EOR
1.1 interchange/code/Filter/upload.filter
rev 1.1, prev_rev 1.0
Index: upload.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: upload.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef upload Filter
CodeDef upload Routine <<EOR
sub {
my ($fn, $vn) = @_;
if( tag_value_extended($vn, { test => 'isfile', })) {
return tag_value_extended($vn, { file_contents => 1 });
}
else {
return $fn;
}
}
EOR
1.1 interchange/code/Filter/urldecode.filter
rev 1.1, prev_rev 1.0
Index: urldecode.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: urldecode.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef urldecode Filter
CodeDef urldecode Routine <<EOR
sub {
my $val = shift;
$val =~ s|\%([a-fA-F0-9][a-fA-F0-9])|chr(hex($1))|eg;
return $val;
}
EOR
1.1 interchange/code/Filter/urlencode.filter
rev 1.1, prev_rev 1.0
Index: urlencode.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: urlencode.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef urlencode Filter
CodeDef urlencode Routine <<EOR
sub {
my $val = shift;
$val =~ s|([^\w:])|sprintf "%%%02x", ord $1|eg;
return $val;
}
EOR
1.1 interchange/code/Filter/value.filter
rev 1.1, prev_rev 1.0
Index: value.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: value.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef value Filter
CodeDef value Routine <<EOR
sub {
return $::Values->{$_[0]};
}
EOR
1.1 interchange/code/Filter/word.filter
rev 1.1, prev_rev 1.0
Index: word.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: word.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef word Filter
CodeDef word Routine <<EOR
sub {
my $val = shift;
$val =~ s/\W+//g;
return $val;
}
EOR
1.1 interchange/code/Filter/yesno.filter
rev 1.1, prev_rev 1.0
Index: yesno.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: yesno.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef yesno Filter
CodeDef yesno Routine <<EOR
sub {
my $val = shift(@_) ? 'Yes' : 'No';
return $val unless $Vend::Cfg->{Locale};
return $val unless defined $Vend::Cfg->{Locale}{$val};
return $Vend::Cfg->{Locale}{$val};
}
EOR
1.1 interchange/code/Filter/zerofix.filter
rev 1.1, prev_rev 1.0
Index: zerofix.filter
===================================================================
# Copyright 2002-2004 Interchange Development Group (http://www.icdevgroup.org/)
# Copyright 1996-2002 Red Hat, Inc.
# Licensed under the GNU GPL v2. See file LICENSE for details.
# $Id: zerofix.filter,v 1.1 2004/10/19 10:03:51 docelic Exp $
CodeDef zerofix Filter
CodeDef zerofix Routine <<EOR
sub {
$_[0] =~ /^0*(.*)/; return $1;
}
EOR
More information about the interchange-cvs
mailing list