--- parser3/src/www/htdocs/Attic/index.html 2001/10/29 17:50:38 1.444 +++ parser3/src/www/htdocs/Attic/index.html 2001/12/19 16:24:07 1.507 @@ -1,4 +1,41 @@ +@USE +t.p + @main[] +^eval(100/6)[%.2f] +$request:charset[windows-1251] +$response:charset[windows-1251] +#^tupper[] +#^treplace[] +#^xslt2[] +#^tcache2[] +#$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[] @@ -12,7 +49,7 @@ #^domxslt[] #^lsplit2[] #^faceesize[] -^imageresize[] +#^imageresize[] #^ifassignhash[] #^tintdefault[] #$response:status[404] @@ -44,8 +81,228 @@ #^xslt[] #^xml[] #^header[] +
OK +@tupper[] +$t[abcABCабвАБВ] +$t
+^t.upper[] + +@treplace[] +$copy-paste-clean[^table::set{a b +. _ +, _ ++ _ +& _ +? _ += _}] + +$cache_key[^taint[в.а,с+я]&был?тут=недавно.cache] +# почему-то этот replace роняет апач в 500 ошибку :( +#^cache_key.replace[$copy-paste-clean] +$test[abc] +^test.save[$cache_key]saved
+$cache[^file:list[.;\.cache^$]] +^file:delete[$cache_key]deleted($cache.name)
+ + + +@xslt2[] +$xdoc[^xdoc::set{ +

hi

+}] +#^show-xdoc2[$xdoc] +^show-xdoc2[^xdoc.transform[templates/_document.xslt]] +
+ + +@tcache2[] +^cache[$DB_HOME/keyключ](2){ + ^math:random(100) +} + +@ttaintuntaint[] +^taint[html][ + +]zz +
+^untaint[html]{1^taint[ ]2 3} + + +@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{ +$news[^table::sql{select description from news}[$.limit(3)]] +^news.menu{ + ^untaint{$news.description}
+ +} +
+} + +$tables[^table::sql{select table_name from user_tables}] +^tables.menu{ +$tables.table_name
+} + +} +
+$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}}] + + +@tablecolumnerror[] +$t[^table::set{a}] +$t.$a + +@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
+} + +@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} +
+ + + + +@formattest[] +$size(15.124) + +^size.format{%.2f} + +@filelist[] +$html[^file:list[.;\.html^$]] +^html.menu{ + $html.name
+} +
+ @безнадёжна_попытка_поправить_непоправимое[] $dom_from_disk[^xdoc::load[input.xml]] $dom_created_in_air[^xdoc::create[doc]] @@ -55,28 +312,31 @@ $dom_created_in_air[^xdoc::create[doc]] @tcache[] #^hashfile:clear[cache] -$code[^hashfile::open[cache]] +$code[^hashfile::open[$DB_HOME;cache]] ^code.cache[key](2){ ^math:random(100) # ^code.delete[] } - @thashfileexp[] -$hf[^hashfile::open[hashfile]] +$hf[^hashfile::open[$DB_HOME;hashfile]] $hf.paf[$.value[крут] $.expires(3)] paf=$hf.paf
+^hf.foreach[key;value]{ + $key=$value
+} +
$hash[^hf.hash[]] =$hash.paf=
@tcounter[] ^tcounterone[$DB_HOME] -#other root: -#^tcounterone[${DB_HOME}2] -#again, first: -#^tcounterone[$DB_HOME] +other root: +^tcounterone[${DB_HOME}2] +again, first: +^tcounterone[$DB_HOME] @tcounterone[DB_HOME] $counter[^hashfile::open[$DB_HOME;counter]] @@ -129,8 +389,8 @@ paf=$hf.paf $a $xdoc[^xdoc::create[doc]] $doc[$xdoc.documentElement] -$name[^doc.appendChild[^xdoc.createElement{name}]] -$text[^name.appendChild[^xdoc.createTextNode{петросян ^;co}]] +$name[^doc.appendChild[^xdoc.createElement[name]]] +$text[^name.appendChild[^xdoc.createTextNode[петросян&coz]]] ^untaint[as-is]{=$text.nodeValue=} @domedit[] @@ -389,9 +649,33 @@ $a.status|$a.stderr
@fori[][i] ^for[i](1;3){... =$i= ...} +@xdata0[] +#$response:content-type[$.value[text/html] $.charset[windows-1251]] +$xdoc[^xdoc::set{ + + + + P«^;AF B + + + ПИФ^taint[&] + + +}] + @xdata[] #$response:content-type[$.value[text/html] $.charset[windows-1251]] -$xdoc[^xdoc::load[input.xml]] +$xdoc[^xdoc::set{^process{ + + + + P«^;AF B + + + ПИФ^taint[&] + + +}}] @xml[] ^xdata[] @@ -452,7 +736,7 @@ by id: } @show-xdoc2[xdoc] -^xdoc.save[save.xml; +^xdoc.save[out/save.xml; # $.encoding[windows-1251] $.method[xml] ] @@ -460,10 +744,18 @@ $file[^xdoc.file[ # $.encoding[windows-1251] $.method[html] ]] -^file.save[text;save_file.html] -
taint[^xdoc.string[]]
-#	$.encoding[windows-1251]
+^file.save[text;out/save_file.html]
+#$response:body[^xdoc.file[	$.media-type[text/paf]  ]]
+
^taint[html][^xdoc.string[
 #	$.method[html]
-#]]
+#	$.version[1.0]
+#	$.encoding[utf-8]
+#  	$.omit-xml-declaration[yes]
+#	$.standalone[yes]
+#	$.doctype-public[-//W3C//DTD XHTML]
+#	$.doctype-system[/a/b/c/]
+#	$.indent[no]
+	$.media-type[text/paf]
+]]