Diff for /parser3/src/www/htdocs/Attic/index.html between versions 1.449 and 1.536

version 1.449, 2001/10/30 16:30:08 version 1.536, 2002/01/24 15:33:13
Line 1 Line 1
   @auto[]
   $request:charset[windows-1251]
   $response:charset[windows-1251]
   $response:content-type[$.value[text/html]$.charset[$response:charset]]
   
 @main[]  @main[]
 ^tform[]  ^xmloutattrwithoutvalue[]
   #^precisionProblem[]
   #^xpath[]
   #^ttablesetlang[]
   #^mail3[]
   #^ttime[]
   #^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)<br>
   #^tform[]
 #^formattest[]  #^formattest[]
 #^filelist[]  #^filelist[]
 #^connect[mysql://user:pass@host]{ }  #^connect[mysql://user:pass@host]{ }
Line 47 Line 86
 #^xslt[]  #^xslt[]
 #^xml[]  #^xml[]
 #^header[]  #^header[]
   <hr>
 OK  OK
   
   @xmloutattrwithoutvalue[]
   #$ORIGINS(1)
   $doc[^xdoc::set{<?xml version="1.0"?><doc background="">zz</doc>}]
   $doc[^doc.transform[global.xsl]]
   =^taint[html][^doc.string[$.method[html]]]=
   
   
   
   @precisionProblem[]
   $a[123456789012345678901234567890]
   $b(^a.double[])
   ^b.format{%.20E}
   <hr>
   ^eval(2*2)
   
   @xpath[]
   $xdoc[^xdoc::set{<?xml version="1.0" encoding="windows-1251" ?>
   <document><block><p>привет</p></block></document>
   }]
   #^show-xdoc2[$xdoc]
   $node[^xdoc.selectSingle[/document/block/p]]
   ^if(def $node){
           ^if($node is string){
                   $node
           }{
           ^if($node is hash){
                   ^node._count[]
           }{
                   $node.nodeType
           }
           }
   #$node.firstChild.nodeValue
   }{
           node not found
   }
   
   
   @ttablesetlang[]
   $a-tab-b[a      b
   1       2]
   
   $t[^table::set{$a-tab-b}]
   =$t.a=
   <hr>
   
   $t[^table::set[nameless]{^taint[$a-tab-b]}]
   =$t.0=
   <hr>
   
   $t[^table::set{^untaint{^taint[$a-tab-b]}}]
   =$t.a=
   
   #^t.append{1    2}
   
   @mail3[]
   ^mail:send[
           $.from[Александр Петросян <paf@design.ru>]
           $.to[Александр Петросян <paf@design.ru>]
           $.subject[проверка4]
           $.body[
                   $.text[
                           $.content-type[$.value[text/plain] $.charset[windows-1251]]
                           $.body[проверка]
                   ]
                   $.attachment[
                           $.value[^file::load[text;index.html]]
                           $.file-name[привет всем.html]                   
                   ]
           ]
   ]
   
   
   @ttime[]
   $now[^date::now[]]
   $now.hour:$now.minute
   
   @tupper[]
   $t[abcABCабвАБВ]
   $t<br>
   ^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<br>
   $cache[^file:list[.;\.cache^$]]
   ^file:delete[$cache_key]deleted($cache.name)<br>
   
   
   
   @xslt2[]
   $xdoc[^xdoc::set{<?xml version="1.0" encoding="windows-1251" ?>
   <document><block><p>привет</p></block></document>
   }]
   ^show-xdoc2[$xdoc]
   ^show-xdoc2[^xdoc.transform[templates/_document.xslt]]
   <hr>
   
   
   @tcache2[]
   ^cache[$DB_HOME/keyключ](2){
           ^math:random(100)
   }
   
   @ttaintuntaint[]
   <!-- некий панковский заголовок с буковкой C в круглых скобках -->^taint[html][
   
   ]zz
   <hr>
   ^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}<hr>
   
   }
   <hr>
   
   
   ^rem{
   $news[^table::sql{select description from news}[$.limit(3)]]
   ^news.menu{
           ^untaint{$news.description}<hr>
   
   }
   <hr>
   }
   
   $tables[^table::sql{select table_name from user_tables}]
   ^tables.menu{
   $tables.table_name<br>
   }
   
   }
   <hr>
   $env:PATH
   
   @badconstructors[]
   $bred[^string::length[]]
   $bred[^response::clear[]]
   $bred[^int::int[]]
   
   
   @xloadwrongtable[]
   $constr[^xdoc::load[wrongtable.xml]]
   ^show-xdoc2[$constr]
   
   @xsetwrongtable[]
   $constr[^xdoc::set{<?xml version="1.0" encoding="windows-1251z" ?>
   <block-list>^untaint[as-is]{$constructor}</block-list>}]
   
   
   @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]]=<br>
   =$cookie:clientType=<br>
   
   
   @tableset[]
   $a[^table::set{a
   1
   2}]
   ^eval(100\$a)
   
   
   
   @zzz[]
   
   
   $constructor[
   <block1 name="main_srvr" type="0" label="Основное тело" />
   <block2 name="main_srvr2" type="0" label="Основное тело" />
   ]
   
   $constr[^xdoc::set{<?xml version="1.0" encoding="windows-1251" ?>
   <block-list>^untaint[as-is]{$constructor}</block-list>}]
   
   $children[$constr.documentElement.childNodes]
   ^if($children){
   ^for[i](1;^children._count[]){
           $node[$children.$i]
           $node.nodeName<br>
   }
   }
      
   
   @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<br>
   }
   
   @thashdelete[]
   $h[$.a[1] $.b[2]]
   was:<br>
   count=^h._count[] <br>
   b='$h.b' <br>
   
   ^h.delete[b] 
   
   now:<br>
   count=^h._count[] <br>
   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[]  @tform[]
 ^if(def $form:new_file){y}{n}  ^if(def $form:new_file){y}{n}
 <form method="post" enctype="multipart/form-data">  <form method="post" enctype="multipart/form-data">
Line 77  $dom_created_in_air[^xdoc::create[doc]] Line 394  $dom_created_in_air[^xdoc::create[doc]]
   
 @tcache[]  @tcache[]
 #^hashfile:clear[cache]  #^hashfile:clear[cache]
 $code[^hashfile::open[cache]]  $code[^hashfile::open[$DB_HOME;cache]]
 ^code.cache[key](2){  ^code.cache[key](2){
         ^math:random(100)          ^math:random(100)
 #       ^code.delete[]  #       ^code.delete[]
 }  }
   
   
 @thashfileexp[]  @thashfileexp[]
 $hf[^hashfile::open[hashfile]]  $hf[^hashfile::open[$DB_HOME;hashfile]]
 $hf.paf[$.value[крут] $.expires(3)]  $hf.paf[$.value[крут] $.expires(3)]
 paf=$hf.paf  paf=$hf.paf
 <hr>  <hr>
   ^hf.foreach[key;value]{
           $key=$value<br>
   }
   <hr>
 $hash[^hf.hash[]]  $hash[^hf.hash[]]
 =$hash.paf=  =$hash.paf=
 <hr>  <hr>
   
 @tcounter[]  @tcounter[]
 ^tcounterone[$DB_HOME]  ^tcounterone[$DB_HOME]
 #other root:  other root:
 #^tcounterone[${DB_HOME}2]  ^tcounterone[${DB_HOME}2]
 #again, first:  again, first:
 #^tcounterone[$DB_HOME]  ^tcounterone[$DB_HOME]
   
 @tcounterone[DB_HOME]  @tcounterone[DB_HOME]
 $counter[^hashfile::open[$DB_HOME;counter]]  $counter[^hashfile::open[$DB_HOME;counter]]
Line 151  paf=$hf.paf Line 471  paf=$hf.paf
 $a  $a
 $xdoc[^xdoc::create[doc]]  $xdoc[^xdoc::create[doc]]
 $doc[$xdoc.documentElement]  $doc[$xdoc.documentElement]
 $name[^doc.appendChild[^xdoc.createElement{name}]]  $name[^doc.appendChild[^xdoc.createElement[name]]]
 $text[^name.appendChild[^xdoc.createTextNode{петросян&nbsp^;co}]]  $text[^name.appendChild[^xdoc.createTextNode[петросян&coz]]]
 ^untaint[as-is]{=$text.nodeValue=}  ^untaint[as-is]{=$text.nodeValue=}
   
 @domedit[]  @domedit[]
Line 411  $a.status|$a.stderr<hr> Line 731  $a.status|$a.stderr<hr>
 @fori[][i]  @fori[][i]
 ^for[i](1;3){... =$i= ...}  ^for[i](1;3){... =$i= ...}
   
   @xdata0[]
   #$response:content-type[$.value[text/html] $.charset[windows-1251]]
   $xdoc[^xdoc::set{<?xml version="1.0" encoding="windows-1251"?>
   <!--DOCTYPE people SYSTEM "D:\Y\parser3project\parser3\src\www\htdocs\people.dtd"-->
   <people>
           <man id="1" имя="word слово">
                   <name>P&#171^;AF        B</name>
           </man>
                   <man id="2">
                           <name>ПИФ^taint[&]</name>
                   </man>
   </people>
   }]
   
 @xdata[]  @xdata[]
 #$response:content-type[$.value[text/html] $.charset[windows-1251]]  #$response:content-type[$.value[text/html] $.charset[windows-1251]]
 $xdoc[^xdoc::load[input.xml]]  $xdoc[^xdoc::set{^process{<?xml version="1.0" encoding="windows-1251"?>
   <!--DOCTYPE people SYSTEM "D:\Y\parser3project\parser3\src\www\htdocs\people.dtd"-->
   <people>
           <man id="1" имя="word слово">
                   <name>P&#171^;AF        B</name>
           </man>
                   <man id="2">
               <name>ПИФ^taint[&]</name>
                   </man>
   </people>
   }}]
   
 @xml[]  @xml[]
 ^xdata[]  ^xdata[]
Line 474  by id: Line 818  by id:
 }  }
   
 @show-xdoc2[xdoc]  @show-xdoc2[xdoc]
 ^xdoc.save[save.xml;  ^xdoc.save[out/save.xml;
 #       $.encoding[windows-1251]  #       $.encoding[utf-8]
         $.method[xml]          $.method[xml]
 ]  ]
 $file[^xdoc.file[  $file[^xdoc.file[
 #       $.encoding[windows-1251]          $.encoding[utf-8]
         $.method[html]          $.method[html]
 ]]  ]]
 ^file.save[text;save_file.html]  ^file.save[text;out/save_file.html]
 <pre>taint[^xdoc.string[]]  #$response:body[^xdoc.file[     $.media-type[text/paf]  ]]
 #       $.encoding[windows-1251]  <pre>^taint[html][^xdoc.string[
 #       $.method[html]          $.method[html]
 #]]  #       $.encoding[utF-8]
   #       $.omit-xml-declaration[yes]
   #       $.standalone[no]
   #       -$.doctype-public[-//W3C//DTD XHTML]
   #       -$.doctype-system[/a/b/c/]
   #       $.indent[yes]
   #       $.media-type[text/paf]
   ]]
 </pre>  </pre>
   

Removed from v.1.449  
changed lines
  Added in v.1.536


E-mail: