Fix handling of extra_query_params in Business::OnlinePayment wrapper.
[interchange.git] / code / Widget / uploadhelper.widget
1 # Copyright 2005-2007 Interchange Development Group and others
2
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.  See the LICENSE file for details.
7
8 # $Id: uploadhelper.widget,v 1.7 2009-05-20 09:39:19 racke Exp $
9
10 CodeDef uploadhelper  Widget  1
11 CodeDef uploadhelper  Description File upload
12 CodeDef uploadhelper  Routine <<EOR
13 sub {
14         # $column, $value, $record->{outboard}, $record->{width}
15     my ($opt) = @_;
16
17         my $name = $opt->{name};
18         my $val  = $opt->{value};
19         my $umask = $opt->{umask} || '022';
20         my $path = $opt->{path} || $opt->{outboard};
21         my $size = $opt->{cols} || $opt->{width};
22         
23         $path =~ s:^/+::;
24         my $view_url;
25         $size = qq{ SIZE="$size"} if $size > 0;
26         my $out = '';
27     if ($val) {
28                 if($path) {
29                         my $base = $::Variable->{UI_BASE} || 'admin';
30                         my $view_url = Vend::Interpolate::tag_area("$base/do_view", "$path/$val");
31                         $out .= qq{<A HREF="$view_url">};
32                 }
33                 $out .= $val;
34                 if ($path) {
35                         $out .= "</A>";
36                         $out .= qq{<input type="checkbox" name="ui_upload_file_delete:$name" value="1">};
37                         $out .= errmsg('Delete');
38                 }
39                 $out .= qq{&nbsp;<INPUT TYPE=file NAME="$name" VALUE="$val">
40 <INPUT TYPE=hidden NAME="ui_upload_file_path:$name" VALUE="$path">
41 <INPUT TYPE=hidden NAME="$name" VALUE="$val">
42 <INPUT TYPE=hidden NAME="ui_upload_umask:$name" VALUE="$umask">};      
43     }
44         else {
45         $out = qq{<INPUT TYPE=hidden NAME="ui_upload_file_path:$name" VALUE="$path">
46 <INPUT TYPE=file NAME="$name"$size>
47 <INPUT TYPE=hidden NAME="ui_upload_umask:$name" VALUE="$umask">};
48     }
49         return $out;
50 }
51 EOR