--- parser3/src/www/htdocs/Attic/index.html 2001/04/17 19:01:04 1.144
+++ parser3/src/www/htdocs/Attic/index.html 2001/11/22 10:28:46 1.488
@@ -1,452 +1,700 @@
-@auto[]
-$html-typo[^table:set{user html comment
-<< «^; длинные user вперёд
->> »^;
-\n\n
!эти есть в таблице по умолчанию
-\n
!но т.к. заменяем, надо повторить.
-< <^; !можно этим воспользоваться,
-> >^; !и что-то сделать ДО обычных замен
-" "^; !например из << и >>
-& &^; !сделать ёлочки-кавычки.
-_  ^;
-^#AB «^; windows коды ёлочек
-^#BB »^; windows коды ёлочек
-(c) ©^;
-^#A9 ©^; windows (c)
-}]
+@main[]
+$ORIGINS(1)
+#$t[^table::set{a b} ^table::set{c d}]
+#^ttaintuntaint[]
+#^tappend2[]
+#^badvsnprintf[]
+#^badoracequoting[]
+#^badconstructors[]
+#^xloadwrongtable[]
+#^xsetwrongtable[]
+#^if($form:test){y}{n}
+#^tablecolumnerror[]
+#^roll[]
+#^cookie2[]
+#^tableset[]
+#^math:PI.format{%.30f}
+#^xchildren[]
+#^thashforeach3[]
+#^thashforeach2[]
+#^thashforeach[]
+#^thashdelete[]
+#^connect[mysql://user:pass@cd.rinet.ru/db]{^void:sql{z} }
+#^tappend[]
+#^sappend[]
+#^eval(10\3)
+#^tform[]
+#^formattest[]
+#^filelist[]
+#^connect[mysql://user:pass@host]{ }
+#^безнадёжна_попытка_поправить_непоправимое[]
+#^tcache[]
+#^thashfileexp[]
+#^tcounter[]
+#^tablehash[]
+#j^hashfile[]
+#^formclass[]
+#^hren[]
+#^domedit[]
+#^domxslt[]
+#^lsplit2[]
+#^faceesize[]
+#^imageresize[]
+#^ifassignhash[]
+#^tintdefault[]
+#$response:status[404]
+#^ifpasshash[]
+#^movedir[]
+#^replace[]
+#^set[]
+#^hash[]
+#$t[^methresult[]] ->$t
+#^terror[]
+#^ssave[]
+#^calendar[]
+#^thash[]
+#^tdef[]
+#^ford[]
+#^tif[]
+#^image[]
+#^mail2[]
+#^cookie[]
+#^response[]
+#^regexp2[]
+#^ttablerem[]
+#^pcre[]
+#^regexp[]
+#^mail[]
+#^exec[]
+#^fori[]
+#^tconnect[]
+^xslt[]
+#^xml[]
+#^header[]
+
+OK
+
+@ttaintuntaint[]
+^taint[html][
-@dump[t]
-^t.menu{$n
}
-
-@func[n]
-$n
-@twop[a;b]
-($a,$b)
-
-@Я post-process[data]
-#(
$data)
-^data.match[1][g]{X}
+]zz
+
+^untaint[html]{1^taint[ ]2 3}
-@mt[s;m]
-$m ^if(^s.match[$:m;i]){matches}{does not match} $s
-@main[]
-image:create
-$itext[^image:create(300;100)]
-$itext{
-^font[ ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя0123456789-+=!\"%:,.^^^;<>?@()[]'&*/;font.gif](13)
-^^text(10;10)[ПАФ сделал это]
-^text(10;10)[ПАФ сделал это]
-^font[ ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя0123456789-+=!\"%:,.^^^;<>?@()[]'&*/;font.gif](13;8)
-^^text(10;30)[ПАФ сделал это fixed]
-^text(10;30)[ПАФ сделал это fixed]
-}
-$ff[^itext.gif[]]
-^ff.save[itext.gif]
-^itext.html[$src[itext.gif]]
-
-
-
-$t[^table:set{id}]
-^^t.id.int[]=^t.id.int[]
-^^hren.double[]=^hren.double[]
-
-#image:create
-#$drawing[^image:create(300;100)]
-drawing:load
-$drawing[^image:load[001004paf(c)lena_karin.gif]]
-$drawing{
-^$drawing.width=$width
-^$drawing.height=$height
-^for[i](0;$width/4){
-^line(0;0)($:i*4;$height-1)(0x00FF00)
-}
-
-^rectangle(100;10)(180;40)(0xFF0000)
-^bar(100+20;10+20)(180+20;40+20)(0xFFFF00)
-^fill(0;0)(0x0000FF)
-^replace(0xFFffFF;0x00FF00)(30;0)(150;99)(200;50)
-^polybar(0x00FFFF)(200;100)(170;99)(280;50)
-^polygon(0xFFFF00)(210;100)(160;90)(250;50)
-
-}
-
-#$response:body[^drawing.gif[]]
-$ff[^drawing.gif[]]
-^ff.save[drawing.gif]
-^drawing.html[$src[drawing.gif]]
-
-image:load
-$face[^image:load[001004paf(c)lena_karin.gif]]
-^$face.src=$face.src
-^$face.width=$face.width
-^$face.height=$face.height
-
-
-^if($form:photo){
-upload file:
-$face[^image:measure[$form:photo]]
-$face.src=$face.src
-^$face.width=$face.width
-^$face.height=$face.height
-
-}
-gif file class:
-$face[^image:measure[^file:load[001004paf(c)lena_karin.gif]]]
-^$face.src=$face.src
-^$face.width=$face.width
-^$face.height=$face.height
-^^face.html[]=^face.html[]
-
-gif:
-$face[^image:measure[001004paf(c)lena_karin.gif]]
-^$face.src=$face.src
-^$face.width=$face.width
-^$face.height=$face.height
-^^face.html[]=^face.html[]
-
-jpeg:
-$face[^image:measure[001004paf(c)lena_karin.jpg]]
-^$face.src=$face.src
-^$face.width=$face.width
-^$face.height=$face.height
-^^face.html[^$border(1) ^$ismap(-1)]=^face.html[$border(1) $ismap(-1)]
-
+@tappend2[]
+$t[^table::set{a b}]^t.append{1 2}$t.a
+
+@badvsnprintf[]
+^connect[zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz]{
+}
+
+
+@badoracequoting[]
+$SQL.connect-string[oracle://webspb:webpwd@mts?NLS_LANG=RUSSIAN_AMERICA.CL8MSWIN1251&NLS_DATE_FORMAT=YYYY-MM-DD HH24:MI:SS]
+^connect[$SQL.connect-string]{
+^void:sql{delete from paf}
+^void:sql{insert into paf values (1, '$form:text')}
+$paf[^table::sql{select * from paf}]
+^paf.menu{
+ $paf.id: ^untaint{$paf.block}
+
+}
+
+
^rem{
-^mail:send[
- $to[paf@design.ru]
- $subject[test]
- $body[test]
-]
-
+$news[^table::sql{select description from news}[$.limit(3)]]
+^news.menu{
+ ^untaint{$news.description}
+
+}
+
}
-env.pl
-$e[^file:cgi[env.pl;$t[1]]]
-^$e.exit-code=$e.exit-code
-^$e.stderr="$e.stderr"
-$e.text
-
-
-^rem{^mail:send[
- $to[paf@design.ru]
- $from[paf@design.ru]
- $body[
- $1[
- $content-type[
- $value[text/plain]
- $charset[windows-1251]
- ]
- $body[привет, PAF.
+$tables[^table::sql{select table_name from user_tables}]
+^tables.menu{
+$tables.table_name
+}
-sincerily yours,
-PAF
-]
- ]
- $attach[
- $value[^file:load[test.zip]]
- $type[uue]
- $file-name[retest.zip]
- ]
- ]
-]
}
+
+$env:PATH
+
+@badconstructors[]
+$bred[^string::length[]]
+$bred[^response::clear[]]
+$bred[^int::int[]]
+
+
+@xloadwrongtable[]
+$constr[^xdoc::load[wrongtable.xml]]
+
+@xsetwrongtable[]
+$constr[^xdoc::set{
+^untaint[as-is]{$constructor}}]
+
-^rem{^mail:send[
- $content-type[
- $value[text/plain]
- $charset[windows-1251]
- ]
- $to[paf@design.ru]
- $from[paf@design.ru]
- $body[привет, PAF.
+@tablecolumnerror[]
+$t[^table::set{a}]
+$t.$a
-sincerily yours,
-PAF
+@roll[]
+#$date[^date::set(1970;1;2)]
+#^date.roll[month](-1)
+$date[^date::set(2038;1;1)]
+^date.roll[month](+1)
+$date.year $date.month $date.day
+
+@cookie2[]
+#=$cookie:clientType[$.value[test]]=
+=$cookie:clientType=
+
+
+@tableset[]
+$a[^table::set{a
+1
+2}]
+^eval(100\$a)
+
+
+
+@zzz[]
+
+
+$constructor[
+
+
+]
+
+$constr[^xdoc::set{
+^untaint[as-is]{$constructor}}]
+
+$children[$constr.documentElement.childNodes]
+^if($children){
+^for[i](1;^children._count[]){
+ $node[$children.$i]
+ $node.nodeName
+}
+}
+
+
+@thashforeach3[]
+$h[
+ $.a[1]
+ $.b[2]
+]
+$c[^table::set{a
+^h.foreach[key;value]{$value
+}}]
+$c.a
+
+@thashforeach2[]
+$h[
+ $.a[1]
+ $.b[2]
+]
+$c[
+^h.foreach[key;value]{
+ $.$key[$value]
+}
]
+$c.b
+
+@thashforeach[]
+$h[
+ $.a[1]
+ $.b[2]
]
+^h.foreach[key;value]{
+ $key=$value
}
-^rem{^mail:send[
- $to[paf@design.ru]
- $from[paf@design.ru]
- $body[
- $2[
- $content-type[$value[message/rfc822] $name[letter.eml]]
- $body[to: paul
-from: paf
-subject: 2
-
-2.body
- ]
- ]
- $1[
- $to[paul]
- $from[paf]
- $subject[1]
- $content-type[text/plain]
- $body[image]
- ]
- ]
-]}
-
-
-^^table:dir[/]:
-$d[^table:dir[/]]
-^d.menu{$name;
}
-
-
-^^table:dir[/;html^$]
-$d[^table:dir[/;html^$]]
-^d.menu{$name;
}
-
+@thashdelete[]
+$h[$.a[1] $.b[2]]
+was:
+count=^h._count[]
+b='$h.b'
+
+^h.delete[b]
+
+now:
+count=^h._count[]
+b='$h.b'
+
+@sappend[]
+$test[123]
+^test.save[test]
+^test.save[append;test]
+
+@tappend[]
+$test[^table::set{a b
+a1 b1}]
+^test.save[test]
+$test[^table::set{a b
+a2 b2}]
+^test.save[append;test]
+
+
+@tform[]
+^if(def $form:new_file){y}{n}
+