annotate _doc/make.pl @ 375:441e84031c7b

docs
author cin
date Fri, 10 Jan 2014 16:33:00 +0400
parents dacfe7c0311a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
1 #!/usr/bin/perl -w
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
2 use strict;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
3
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
4 use Pod::POM;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
5 use Pod::POM::View::HTML;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
6 use File::Spec;
269
dacfe7c0311a SQL schema updated (unstable)
sergey
parents: 194
diff changeset
7 use utf8;
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
8
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
9 our $LibDir = '../Lib/IMPL';
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
10 our $OutDir = 'html';
65
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
11 our $level = 0;
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
12
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
13 our $index = { name => 'root' };
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
14
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
15 sub process_file {
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
16 my ($fname,@path) = @_;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
17
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
18 (my $name = $path[$#path]) =~ s/\.pm$//;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
19
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
20 (my $fileUrl = File::Spec->catfile(@path)) =~ s/\.pm$/.html/i;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
21
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
22 $index->{items}{$name}{name} = $name;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
23 $index->{items}{$name}{url} = $fileUrl;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
24
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
25 (my $fnameOut = File::Spec->catfile($OutDir,@path)) =~ s/\.pm$/.html/i;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
26
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
27 my $dir =$OutDir;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
28 foreach my $part (@path[0..$#path-1]) {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
29 $dir = File::Spec->catdir($dir,$part);
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
30 mkdir $dir unless -d $dir;
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
31 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
32
181
47dac58691ee New templating system, small fixes
sourcer
parents: 163
diff changeset
33 open my $hPod, "<:encoding(utf-8)", $fname or die "Failed to open $fname for input: $!";
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
34 open my $hOut, ">:encoding(utf-8)", $fnameOut or die "Failed to open $fnameOut for output: $!";
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
35
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
36 my $parser = Pod::POM->new();
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
37
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
38 my $pom = $parser->parse_file($hPod);
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
39
65
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
40 $level = @path;
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
41
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
42 print $hOut PodViewHTML->print($pom);
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
43 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
44
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
45 sub process_dir {
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
46 my ($dirname,@dirs) = @_;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
47
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
48 opendir my $hdir, $dirname or die "faield to open dir $dirname: $!";
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
49
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
50 foreach my $entry (readdir $hdir) {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
51 next if grep $_ eq $entry, '.','..';
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
52
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
53 my $path = "$dirname/$entry";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
54
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
55 print "$path";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
56
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
57 if (-d $path) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
58 print "\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
59 local $index = exists $index->{items}{$entry} ? $index->{items}{$entry} : ($index->{items}{$entry} = {name => $entry});
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
60 process_dir($path,@dirs,$entry);
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
61 } elsif ($entry =~ /\.(pm|pod)$/) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
62 print "\tprocessed\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
63 process_file($path,@dirs,$entry);
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
64 } else {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
65 print "\tskipped\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
66 }
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
67 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
68 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
69
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
70 sub build_index {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
71 my ($hout,$index) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
72
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
73 print $hout "\n<ul>\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
74
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
75 if ($index->{items}) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
76 foreach my $itemKey (sort keys %{$index->{items}}) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
77 my $item = $index->{items}{$itemKey};
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
78 print $hout "<li>";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
79 print $hout "<a target='content' href='$item->{url}'>" if $item->{url};
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
80 print $hout $item->{name};
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
81 print $hout "</a>" if $item->{url};
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
82 build_index($hout,$item) if $item->{items};
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
83 print $hout "</li>\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
84 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
85 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
86
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
87 print $hout "</ul>\n";
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
88 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
89
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
90 `rm -r html`;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
91 mkdir 'html' unless -d 'html';
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
92
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
93 process_dir($LibDir);
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
94
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
95 open my $hout, ">:encoding(utf-8)", "$OutDir/toc.html" or die "failed to open toc.html for output: $!";
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
96
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
97 print $hout <<HEADER;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
98 <html>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
99 <head>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
100 <meta http-equiv="Content-type" content="text/html; charset=UTF-8"/>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
101 <title>IMPL reference</title>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
102 </head>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
103 <body>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
104 HEADER
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
105
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
106 build_index($hout,$index);
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
107
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
108 print $hout <<FOOTER;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
109 </body>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
110 </html>
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
111 FOOTER
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
112
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
113 undef $hout;
f47f93534005 Documentation
wizard
parents: 65
diff changeset
114
f47f93534005 Documentation
wizard
parents: 65
diff changeset
115 open $hout, ">:encoding(utf-8)","$OutDir/index.html" or die "failed to open index.html for output: $!";
f47f93534005 Documentation
wizard
parents: 65
diff changeset
116
f47f93534005 Documentation
wizard
parents: 65
diff changeset
117 print $hout <<FRAMES;
f47f93534005 Documentation
wizard
parents: 65
diff changeset
118 <html>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
119 <head>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
120 <meta http-equiv="Content-type" content="text/html; charset=UTF-8"/>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
121 <title>IMPL reference</title>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
122 </head>
74
wizard
parents: 73
diff changeset
123 <frameset cols="20%,*">
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
124 <frame name="toc" src="toc.html"/>
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
125 <frame name="content" src="about:blank"/>
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
126 </frameset>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
127 </html>
f47f93534005 Documentation
wizard
parents: 65
diff changeset
128 FRAMES
f47f93534005 Documentation
wizard
parents: 65
diff changeset
129
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
130 package PodViewHTML;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
131 use base qw(Pod::POM::View::HTML);
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
132
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
133 use IPC::Open2;
f47f93534005 Documentation
wizard
parents: 65
diff changeset
134
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
135 sub view_pod {
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
136 my ($self, $pod) = @_;
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
137 return "<html>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
138 \n<body bgcolor=\"#ffffff\">\n"
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
139 . $pod->content->present($self)
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
140 . "</body>\n</html>\n";
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
141 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
142 sub view_begin {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
143 my ($self,$begin) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
144 return code_highlight(join ("",$begin->content()),$begin->format);
65
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
145 }
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
146
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
147 sub escape_html {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
148 my %esc = (
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
149 '&' => '&amp;',
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
150 '>' => '&gt;',
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
151 '<' => '&lt;'
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
152 );
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
153
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
154 (my $text = shift) =~ s/([&><])/$esc{$1}/gex;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
155
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
156 return $text;
64
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
157 }
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
158
259cd3df6e53 Doc generation
wizard
parents:
diff changeset
159 sub view_seq_link {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
160 my ($self,$text) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
161
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
162 $text =~ s/(\w+(?:\:\:\w+)+)/
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
163 if (my $url = $self->mk_filelink($1)) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
164 "<a href='$url'>$1<\/a>";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
165 } else {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
166 $1;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
167 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
168 /gex;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
169
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
170 return "<code>$text</code>";
73
wizard
parents: 66
diff changeset
171 }
wizard
parents: 66
diff changeset
172
wizard
parents: 66
diff changeset
173 sub mk_filelink {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
174 my ($self,$package) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
175
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
176 return undef unless $package;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
177
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
178 my @path = split /::/, $package;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
179
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
180 if ($path[0] eq 'IMPL') {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
181 shift @path;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
182 if (-f File::Spec->catfile($LibDir,@path).".pm") {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
183 return '../'x($level-1) . File::Spec->catfile(@path).'.html';
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
184 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
185 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
186 return undef;
65
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
187 }
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
188
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
189 sub view_seq_code {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
190 goto &view_seq_link;
65
2840c4c85db8 Application configuration improvements
wizard
parents: 64
diff changeset
191 }
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
192
f47f93534005 Documentation
wizard
parents: 65
diff changeset
193 sub view_code {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
194 my ($self,$code) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
195
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
196 return code_highlight($code);
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
197 }
f47f93534005 Documentation
wizard
parents: 65
diff changeset
198
f47f93534005 Documentation
wizard
parents: 65
diff changeset
199 sub code_highlight {
194
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
200 my ($text,$format) = @_;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
201
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
202 if ($format) {
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
203 $format =~ s/code//i;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
204 $format =~ s/\s+//g;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
205 }
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
206
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
207 $format ||= 'perl';
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
208
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
209 return "<pre>".escape_html($text)."</pre>\n" if $format =~ /^text$/i;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
210
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
211
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
212
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
213 my ($hin,$hout);
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
214 local $/ = undef;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
215 my $pid = eval { open2(
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
216 $hin, $hout, 'source-highlight' => (
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
217 '--src-lang' => $format,
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
218 )
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
219 ) } or return "<pre>".escape_html($text)."</pre>\n";
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
220
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
221 binmode $hout, ':encoding(utf8)';
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
222 binmode $hin, ':encoding(utf8)';
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
223
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
224 print $hout $text;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
225
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
226 undef $hout;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
227
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
228 my $fragment = <$hin>;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
229
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
230 undef $hin;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
231
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
232 return $fragment;
4d0e1962161c Replaced tabs with spaces
cin
parents: 181
diff changeset
233
66
f47f93534005 Documentation
wizard
parents: 65
diff changeset
234 }