Line # Revision Author
1 3 ahitrov@rambler.ru <%args>
2
3 $SETS => undef
4 $field => undef
5 $default => undef
6 $object => undef
7 $prop => undef
8
9 </%args>
10
11 <%init>
12 use IO::File;
13 use Data::Dumper;
14
15 return undef unless defined $SETS and defined $field;
16
17 # --------------------------------------------------------------------------------------
18 # ���������� ����� ��������
19
20 my $IMAGE = $default;
21
22 if ($SETS->{$field}) {
23
24 my $upload = $r->upload($field);
25 if ($upload) {
26 48 ahitrov@rambler.ru
27 114 ahitrov my $IMG = $object->_store_image( $upload, attr => $prop->{attr} );
28 48 ahitrov@rambler.ru
29 114 ahitrov if ( ref $IMG eq 'HASH' && exists $IMG->{filename} ) {
30 $object->_delete_image( $default );
31 %$IMAGE = %$IMG;
32 }
33 48 ahitrov@rambler.ru
34 3 ahitrov@rambler.ru } else {
35 114 ahitrov warn 'ERROR in incoming POST form: "'.$field.' is not file upload (value: "'.$SETS->{$field}.'")';
36 3 ahitrov@rambler.ru }
37 }
38
39 # �������������� ���� - ����� ���, ��� ������...
40
41 my $pattern = "^".$field.q|\.(.*)$|;
42
43 foreach my $localfield (keys(%{ $SETS })) {
44 if ($localfield =~ /$pattern/) {
45 114 ahitrov my $imagefield = $1;
46 $IMAGE->{$imagefield} = $m->comp("/contenido/components/filter.msn", str => $SETS->{$localfield});
47 3 ahitrov@rambler.ru }
48 }
49
50 return $IMAGE;
51 114 ahitrov
52 3 ahitrov@rambler.ru </%init>