1 |
3 |
ahitrov@rambler.ru |
<%DOC> |
2 |
|
|
|
3 |
|
|
���������� �������� ������ � ���������� ��� � ����������� |
4 |
|
|
|
5 |
|
|
</%DOC> |
6 |
|
|
<%ARGS> |
7 |
|
|
|
8 |
|
|
$doc |
9 |
|
|
|
10 |
|
|
</%ARGS> |
11 |
|
|
<%INIT> |
12 |
|
|
|
13 |
|
|
return unless ref($doc); |
14 |
|
|
|
15 |
|
|
my @properties = $doc->structure(); |
16 |
|
|
my $binaries = {}; |
17 |
|
|
for (0..$#properties) |
18 |
|
|
{ |
19 |
|
|
my $prop = $properties[$_]; |
20 |
|
|
my $name = $prop->{attr}; |
21 |
|
|
if ($prop->{type} eq 'multimedia') { |
22 |
|
|
my $BINARY = undef; |
23 |
|
|
if (length($doc->{ $name }) > 8) |
24 |
|
|
{ |
25 |
|
|
$BINARY = eval ('use vars qw($VAR1); '.$doc->{ $name }); |
26 |
|
|
if (ref($BINARY) ne 'HASH') { $BINARY = {} }; |
27 |
|
|
} |
28 |
|
|
$binaries->{$name} = $BINARY; |
29 |
|
|
} |
30 |
|
|
} |
31 |
|
|
return $binaries; |
32 |
|
|
|
33 |
|
|
</%INIT> |
34 |
|
|
|