Annotation of parser3/tests/171.html, revision 1.2
1.1 misha 1: @main[]
2: $request:charset[windows-1251]
3: $response:charset[$request:charset]
4: $sScript[./cat.sh]
5:
6: $tData[^table::create{sType sFormat sContentType sFileName sText sCharset
7: exec text text/plain notfound.txt
8: exec binary image/gif notfound.gif
9: exec text/plain 161_windows1251.txt тест #old style
10: cgi text/plain 161_windows1251.txt #old style
11: cgi text text/plain 161_windows1251.txt тест $request:charset
12: exec text text/plain 161_utf8.txt тест UTF-8
13: cgi binary image/gif 019paf2001.gif
14: }]
15:
16: ^tData.menu{
17: Get ^if(-f $tData.sFileName){file '$tData.sFileName' as ^if($tData.sFormat eq "binary"){binary}{text}^if(def $tData.sText){ with additional text '$tData.sText'}}{not existing file '$tData.sFileName'} ^if(def $tData.sCharset){in $tData.sCharset}{without ^$.charset option} (^if(def $tData.sFormat){^^file::${tData.sType}[$tData.sFormat^;script^;...]}{^^file::${tData.sType}[script^;...]}):
18: ^if(def $tData.sFormat){
19: ^rem{ *** new style where in 1st param we can specify 'text' or 'binary' format *** }
20: ^switch[$tData.sType]{
21: ^case[exec]{
22: $f[^file::exec[$tData.sFormat;$sScript;^if(def $tData.sCharset){$.charset[$tData.sCharset]};exec;$tData.sContentType;$tData.sFileName;$tData.sText]]
23: }
24: ^case[cgi]{
25: $f[^file::cgi[$tData.sFormat;$sScript;^if(def $tData.sCharset){$.charset[$tData.sCharset]};cgi;$tData.sContentType;$tData.sFileName;$tData.sText]]
26: }
27: }
28: }{
29: ^rem{ *** old style: 1st param can be path to script only *** }
30: ^switch[$tData.sType]{
31: ^case[exec]{
32: $f[^file::exec[$sScript;^if(def $tData.sCharset){$.charset[$tData.sCharset]};exec;$tData.sContentType;$tData.sFileName;$tData.sText]]
33: }
34: ^case[cgi]{
35: $f[^file::cgi[$sScript;^if(def $tData.sCharset){$.charset[$tData.sCharset]};cgi;$tData.sContentType;$tData.sFileName;$tData.sText]]
36: }
37: }
38: }
39: ^print[$f]
40: ^if(!$f.status){^f.save[^if($tData.sFormat eq "binary"){binary}{text};171_dir/^tData.line[].^file:justext[$tData.sFileName]]}
41: }
42:
43:
44: @print[f]
1.2 ! misha 45: status: ^if(!$f.status){==0}{!=0}
1.1 misha 46: text: '$f.text'
47: size: ^if(def $f.size){$f.size}{-}
48: text.length: ^if(def $f.text){^f.text.length[]}{-}^taint[as-is][^#0A]
E-mail: