Diff for /parser3/www/htdocs/Attic/index.html between versions 1.68 and 1.124

version 1.68, 2002/06/18 11:09:03 version 1.124, 2002/08/28 10:53:59
Line 1 Line 1
 #@USE  @USE
 #t.p  /derived.p
   
 @autoZ[]  @auto[filespec]
   $selffilespec[$filespec]
 #$form:here  #$form:here
 $request:charset[windows-1251]  #$request:charset[UTF-8]
 $response:charset[windows-1251]  #$response:charset[windows-1251]
 $response:content-type[$.value[text/html]$.charset[$response:charset]]  #$request:charset[windows-1251]
   #$response:charset[UTF-8]
   #$response:content-type[$.value[text/html]$.charset[$response:charset]]
   
 #@postprocess[body]  #@postprocess[body]
 #<b>$body</b>  #<b>$body</b>
 #$result[123]  #$result[123]
   
 @main[]  @main[]
   #$a(123)
   #^a.format[%.10u]
   #$result[111]
   #^f[a]
 #^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{  #^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{
 #       ^int:sql{select news_id from news where news_id=-1}[$.default{2}]<br>  #       ^int:sql{select news_id from news where news_id=-1}[
   ##      $.default{2}
   #       ]<br>
   #    ^hash::sql{bad}
 #    ^string:sql{select news_id from news where news_id=-1}[$.default{2}]  #    ^string:sql{select news_id from news where news_id=-1}[$.default{2}]
   #       ^file::load[text;^string:sql{select 'from sql server' }]
   #       ^string:sql{select '^^hello[]' }] $ORIGINS(1)
   #       ^process{       ^^h[]}
   #       ^process{^string:sql{select '1
   #       ^^hello[]' }]   }
   #       ^double:sql{select '2*' ; }
 #}  #}
 #^eval(2)  #^eval(2)
 #^tcrashlocaljunctionsv2[]  #^tcrashlocaljunctionsv2[]
Line 36  $response:content-type[$.value[text/html Line 52  $response:content-type[$.value[text/html
 #^subjvaltest[]  #^subjvaltest[]
 #^tableselect0[]  #^tableselect0[]
 #^memnotest1[]  #^memnotest1[]
 #^transparams[]  
 #^voidparams[]  #^voidparams[]
 #^rolls2[]  #^rolls2[]
 #^cacheexpireschanging[]  #^cacheexpireschanging[]
Line 66  $response:content-type[$.value[text/html Line 81  $response:content-type[$.value[text/html
 #^precisionProblem[]  #^precisionProblem[]
 #^xpath[]  #^xpath[]
 #^ttablesetlang[]  #^ttablesetlang[]
 #^mail3[]  
 #^ttime[]  #^ttime[]
 #^tupper[]  #^tupper[]
 #^treplace[]  #^treplace[]
Line 124  $response:content-type[$.value[text/html Line 138  $response:content-type[$.value[text/html
 #$t[^methresult[]] ->$t  #$t[^methresult[]] ->$t
 #^terror[]  #^terror[]
 #^ssave[]  #^ssave[]
 #^calendar[]  
 #^thash[]  #^thash[]
 #^tdef[]  #^tdef[]
 #^ford[]  #^ford[]
 #^tif[]  #^tif[]
 #^image[]  #^image[]
 #^mail2[]  #^mail2[]
 #^cookie[]  
 #^response[]  #^response[]
 #^regexp2[]  #^regexp2[]
 #^ttablerem[]  #^ttablerem[]
Line 161  $response:content-type[$.value[text/html Line 173  $response:content-type[$.value[text/html
 #^checkList[]  #^checkList[]
 #^datetest[]  #^datetest[]
 #^tserge[]  #^tserge[]
 ^envt[]  #^envt[]
 #^selectt[]  #^selectt[]
 #^select2[]  #^select2[]
 #^selectSingle2[]  #^selectSingle2[]
Line 175  $response:content-type[$.value[text/html Line 187  $response:content-type[$.value[text/html
 #^xdocsave[]  #^xdocsave[]
 #^div[]  #^div[]
 #^datecreatestring3[]  #^datecreatestring3[]
   #^tfilespec[]
   #^tcrypt[]
   #^cryptdocsample[]
   #^tnormalize[]
   #^xmltransformbyxdoc[]
   #^sergestrandef[]
   #^tstdin[]
   #^tfind[]
   #^mimet[]
   #^cgit[]
   #^joinlimit[]
   #^tableclonelimit[]
   #^transparams[]
   #^sendtests[]
   #^wwrapperpass[]
   #^badpos[]
   #^processtest[]
   #^mail3[]
   #^mail4[]
   #^datesaving[]
   #^badconstructor[]
   #^calendar[]
   #^monthdays(8)
   #^xdoctypetest[]
   #^xtabletest[]
   #^staticstest[]
   #^staticstest2[]
   #^rbodytest[]
   #^cookie[]
   #^cookieexpirestest[]
   #^postest[]
   #^voidpostest[]
   #^virtualtest[]
   #^badcolumntest[]
   #^delimiters[]
   ^новый-split[]
   #^грязные-cookie[]
   <hr>
   OK
                    
   @грязные-cookie[]
   #$a[
   
   @новый-split[]
   $abc[a.b.c]
   #$table[^abc.split[.]]
   #$table[^abc.split[.;l]]
   #$table[^abc.split[.;v]]
   $table[^abc.split[.;lv]]
   ^table.menu{$table.piece}[,]
   <hr>
   #$table[^abc.split[.;h]]
   $table[^abc.split[.;hr]]
   $table.0,$table.1,$table.2<br>
   
   @delimiters[]
   $a#1[1]<br>
   $a#1=<br>
   
   
   @badcolumntest[]
   $table[^table::load[ext.cfg]]
   $table.b
   
   
   @virtualtest[]
   $derived[^derived::create[derived create actual param]]
   ^derived.test[]
   
   
   @voidpostest[]
   $s[]
   ^s.pos[$nothing]
   
   @postest[]
   $s[$nothing]
   ^s.pos[$nothing]
   
   @cookieexpirestest[]
   #$cookie:exptest[1]
   #$cookie:exptest[$.value[2] $.expires(+1)]
   $response:xxxx[^date::now(+10)]
   $response:yyy[$.value[^date::now(+20)]]
   $response:yyy[$.value[vvv] $.aaaa[^date::now(+20)]]
   
   @rbodytest[]
   $request:body=
   <form method=post>
   <input type=submit name=paf value=123>
   </form>
   
   @staticstest2[]
   ^$derived:derived_var=$derived:derived_var<br>
   ^$derived:a=$derived:a<br>
   $derived:a[changed] ^$derived:a=$derived:a<br>
   $derived:derived_var[changed] 
   ^$derived:derived_var=$derived:derived_var<br>
   
   @staticstest[]
   $derived[^derived::create[]]
   ^derived.test[]
   <hr>
   ^$derived.a=$derived.a<br>
   ^$derived.x=$derived.x<br>
   <hr>
   ^if($derived is derived){derived is derived}{error: derived is not derived}<br>
   ^if($derived is table){derived is table}{error:derived is not table}<br>
   <hr>
   ^^eval(^$derived)=^eval($derived)<br>
   ^^if(^$derived)=^if($derived){y}{n}<br>
   
   
   @xdoctypetest[]
   $xdoc[^xdoc::create[x]]
   ^if($xdoc is xdoc){y}{n}
   
   @xtabletest[]
   $xtableo[^xtable::create[]]
   ^if($xtableo is table){y}{n}
   #^xtableo.columns[]
   
   @monthdays[month]
   $from[^date::create(2000;$month;1)]
   $to[^date::create($from)] ^to.roll[month](+1)
   $result($to-$from)
   
   @badconstructor[]
   ^date::now[]
   
   @datesaving[]
   $now[^date::now[]]
   $now.daylightsaving<br>
   $now.yearday<br>
   #
   $date[^date::create(2002;1;3)]
   $date.daylightsaving<br>
   $date.yearday
   
   @mail4[]
   ^mail:send[
           $.from[paf@mail.design.ru]
           $.to[paf@mail.design.ru]
           $.subject[^taint[uri][москва]=2]
           $.text[^taint[uri][москва]=]
           $.html{<a href=http://there.ru/?city=^taint[uri][Москва]>link</a>}
   ]
   @processtest[]
       $f[^file::load[text;piece.p]]       ^process{$f.text}
           $ORIGINS(1)
   
   
   @badpos[]
   $s[123]
   ^s.mid(0;2)
   
   @wwrapperpass[]
   $h[^hash::create[]]
   $h.a(1)
   ^my_method[^if(1){$h}]
   работает. так и должно быть?
   
   @my_method[p]
   ^p._count[]
   
   
   @tableclonelimit[]
   $source[^table::create{a
   aa
   bb
   cc}]
   ^source.offset(1)
   #$dest[^table::create[$source]]
   $dest[^table::create[$source;$.offset(2)]]
   $dest[^table::create[$source;$.limit(2)]]
   $dest[^table::create[$source;$.offset(1)$.limit(1)]]
   $dest[^table::create[$source;$.offset(1)$.limit(2)]]
   $dest[^table::create[$source;$.offset[cur]$.limit(2)]]
   
   ^dest.menu{$dest.a}[,]<br>
   
   @joinlimit[]
   $source[^table::create{a
   aa
   bb
   cc}]
   ^source.offset(2)
   $dest[^table::create{a
   xx
   }]
   #^dest.join[$source]
   #^dest.join[$source;$.offset(2)]
   #^dest.join[$source;$.limit(2)]
   #^dest.join[$source;$.offset(1)$.limit(1)]
   #^dest.join[$source;$.offset(1)$.limit(2)]
   #^dest.join[$source;$.offset[cur]$.limit(1)]
   ^dest.join[$source;$.limit(0)]
   
   ^dest.menu{$dest.a}[,]<br>
   
   @cgit[]
   $f[^file::cgi[showenv.cmd]]
   $f.HELLO=<br>
   $f.CONTENT-TYPE=<br>
   $f.content-type=<br>
   
   
   @mimet[]
   $f[^file::stat[a.GIF]]
   $f.content-type
   
   
   @tfind[]
   ^file:find[index.html]
   
   @tstdin[]
   $f[^file::exec[test.pl;$.stdin[проверка stdin потока]]]
   <pre>$f.text</pre>
   
   @sergestrandef[]
   $sQuantity[ ]
   ^sQuantity.int(10)
   
   @xmltransformbyxdoc[]
   $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>1  2</name>
           </man>
   </people>
   }}]
   $sheet[^xdoc::create{<?xml version="1.0"?> 
   <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
   
   >
   <!--<xsl:output doctype-public ="-//W3C//DTD XHTML" indent="yes"/>-->
   
           <!--<xsl:import href="http://localhost/html.xsl"/>-->
           <xsl:import href="html.xsl"/>
   
   <xsl:param name="param1">defparam1</xsl:param>
   <xsl:param name="param2">defparam2</xsl:param>
   
   
           <xsl:template match="doc">
                   param1=<xsl:value-of select="^$param1"/><br/>
                   param2=<xsl:value-of select="^$param2"/><br/>
   
                   test return <something background=""/>
           </xsl:template>
   
           <xsl:template name="test">
                   test return3
           </xsl:template>
   
     <xsl:template match="people">
        <html>
        <head>z</head>
                   para1=<xsl:copy-of select="^$param1"/>
           <xsl:apply-templates/>
           <hr/>
           <xsl:call-template name="test"/>
        </html>    
     </xsl:template>
   
     <xsl:template match="name">
       <b><xsl:value-of select="."/></b>
     </xsl:template>
   </xsl:stylesheet>
   }]
   
   
   $xdoc[^xdoc.transform[$sheet]]
   $string[^xdoc.string[$.method[html]]]
   ^string.save[a]
   ^untaint[html]{$string}
   
   
   
   @tnormalize[]
   #s состоит из 1000 фрагментов
   $s[^for[i](0;999){фрагмент }]
   #это займет много ресурсов
   ^s.match[фраг][g]{перга}
   #это займет меньше ресурсов
   #$normalized[^s.normalize[]]
   #^normalized.match[фраг][g]{перга}
   
   @sendtests[]
   ^text[]
   #^html[]
   #^text-n-html[]
   #^file[]
   #^text-n-file[]
   #^text-n-html-n-file[]
   #^backwardcomp[]
   
   @backwardcomp[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.body[this is text value]
   ]
   
   @text[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.text[
                   $.value[this is text value]
           ]
   ]
   
   @html[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.html{this is <b>html</b> value ^taint[<] 10}
   ]
   
   @text-n-html[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.text[
                   $.value[this is text value]
           ]
           $.html[
           $.value{this is <b>html</b> value ^taint[<] 10}
           ]
   ]
   
   @file[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.file[^file::load[binary;image.jpg]]
   ]
   
   @text-n-file[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.text[
                   $.value[this is text value]
           ]
           $.file[^file::load[binary;image.jpg]]
   ]
   
   @text-n-html-n-file[]
   ^mail:send[
           $.from[paf]
           $.to[paf]
           $.text[
                   $.value[this is text value]
           ]
           $.html[
           $.COntent-type[$.value[text/html]$.charset[windows-1251xx]]
           $.value{this is <b>html</b> value ^taint[<] 10}
           ]
           $.file[^file::load[binary;image.jpg]]
   ]
   
   
   
   @md5salt[]
   1234
   
   @cryptdocsample[]
   $users[^table::create{name      password
   alice   ***
   bob     ***
   }]
   
   $htpasswd[^table::create[nameless]{}]
   ^users.menu{
           ^htpasswd.append{$users.name:^math:crypt[$users.password;^$apr1^$^md5salt[]]}
   }
   
   ^htpasswd.save[nameless;.htpasswd-parser-test]
   
   
   @tcrypt[]
   #^math:crypt[123;^$apr1^$1234567890abcdef]<br>
   ^math:crypt[123;^$apr1^$]<br>
   
   @tfilespec[]
   src=$selffilespec<br>
   dirname=^file:dirname[$selffilespec]<br>
   basename=^file:basename[$selffilespec]<br>
   justname=^file:justname[$selffilespec]<br>
   justext=^file:justext[$selffilespec]<br>
   
 @datecreatestring3[]  @datecreatestring3[]
 $new_after[^date::now(-3)]  $new_after[^date::now(-3)]
Line 933  $t[^table::set{^untaint{^taint[$a-tab-b] Line 1337  $t[^table::set{^untaint{^taint[$a-tab-b]
   
 @mail3[]  @mail3[]
 ^mail:send[  ^mail:send[
         $.from[Александр Петросян <paf@design.ru>]          $.from[Александр Петросян <paf@mail.design.ru>]
         $.to[Александр Петросян <paf@design.ru>]          $.to[Александр Петросян <paf@mail.design.ru>]
         $.subject[проверка4]          $.subject[проверка2]
         $.body[          $.body[
                 $.text[                  $.text[
                         $.content-type[$.value[text/plain] $.charset[windows-1251]]                          $.content-type[$.value[text/plain] $.charset[windows-1251]]
                         $.body[проверка]                          $.body[проверка^taint[uri][москва]=]
                 ]                  ]
                 $.attachment[                  $.attachment[
                         $.value[^file::load[text;index.html]]                          $.value[^file::load[text;index.html]]
Line 1398  $abc[abc] Line 1802  $abc[abc]
 ^abc.save[abc]  ^abc.save[abc]
   
 @calendar[]  @calendar[]
 2001;11:<br>  $year(2002)
 $week_days[^date:calendar[rus](2001;11)]  $month(12)
   ${year}-${month}:<br>
   $week_days[^date:calendar[rus]($year;$month)]
 <pre>  <pre>
 ^week_days.menu{^for[wday](0;7){^if($week_days.$wday){$week_days.$wday;&nbsp^;&nbsp^;} }<br>}  ^week_days.menu{^for[wday](0;6){^if($week_days.$wday){$week_days.$wday;&nbsp^;&nbsp^;} }=$week_days.week,$week_days.year=<br>}
 </pre>  </pre>
   
 @thash[]  @thash[]
Line 1446  $response:body[^pict.gif[]] Line 1852  $response:body[^pict.gif[]]
 ]  ]
   
 @cookie[]  @cookie[]
 $env:HTTP_COOKIE<br>  #$env:HTTP_COOKIE<br>
   
 #$cookie:переменная[test тест ТЕСТ2]  #$cookie:переменная[test тест ТЕСТ2]
 =$cookie:переменная=<br>  =$cookie:переменная=<br>

Removed from v.1.68  
changed lines
  Added in v.1.124


E-mail: