--- parser3/src/www/htdocs/Attic/index.html 2001/07/11 15:02:09 1.223
+++ parser3/src/www/htdocs/Attic/index.html 2001/12/15 21:28:23 1.501
@@ -1,363 +1,751 @@
-@USE
-dtformat.p
-input_date.p
-
-@href[href zzz;title xxxx;ставить]
-^if($ставить){y;n}
-
@main[]
-^href[href;title](1<2)
-
+#^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[]
+#^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
+
+@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]]
-$stat[^file:stat[test.zip]]
-$stat{
-^$size=$size
-adate=^long_date_format[$adate]
-mdate=^long_date_format[$mdate]
-cdate=^long_date_format[$cdate]
-}
-
-$дата[^input_date:parse[9.7.2001]]
-^long_date_format[$дата]
-
-$дата[^parse_date[9.7.2001]]
-^long_date_format[$дата]
-
-$сегодня[^date:now[]]
-$недельный_календарь[^table:calendar[rus]($сегодня.year;$сегодня.month;$сегодня.day)]
-
-$недельный_календарь{^menu{
- $year $month $day $weekday
-}}
-
-
-$сегодня[^date:now[]]
-$месячный_календарь[^table:calendar[rus;$сегодня.year;$сегодня.month]]
-
-^месячный_календарь.menu{^for[i;0;6]{
- $day[$месячный_календарь.$i]
- ^if($day){$day}{ ^; ^;}
-}
}
-
-
-before $время[^date:now[]]^время.string[]
-year+^время.roll[year](1)^время.string[]
-month+^время.roll[month](1)^время.string[]
-year-^время.roll[year](-1)^время.string[]
-month-^время.roll[month](-1)^время.string[]
-day+^время.roll[day](1)^время.string[]
-day-^время.roll[day](-1)^время.string[]
-
-$русский_день_недели[
- $0[Воскресенье]
- $1[Понедельник]
- $2[Вторник]
- $3[Среда]
- $4[Четверг]
- $5[Пятница]
- $6[Суббота]
-]
-$время[^date:set(0;1;1;3;30;4)]
-$время{
- ^string[]
- ${year}.${month}.${day} ${hour}:${minute}:${second}
+
+@tcache2[]
+^cache[$DB_HOME/keyключ](2){
+ ^math:random(100)
}
-
-$время[^date:set(1.5)]
-^время.string[]
-
-$сейчас[^date:now[]]
-^^сейчас.string[]=^сейчас.string[] $день_недели($сейчас.weekday) $русский_день_недели.$день_недели
-$floatdays($сейчас) ^floatdays.format{%.20f}
-^eval(^math:frac($floatdays)*24)
-^eval(^math:frac($floatdays*24)*60)
-^eval(^math:frac($floatdays*24*60)*60)
-
-PI=^math:PI.format{%.40f}
-
-^math:random(10)
-
-^math:sqrt(16)
-
-$люди[
- $2федя[
- $рост[176]
- ]
- $1василий[
- $возраст[5]
- ]
-]
+@ttaintuntaint[]
+^taint[html][
-$имена[^люди.keys[]]
-$имена{
- ^sort{$key}
- ^menu{$key}[,].
-}
+]zz
+^untaint[html]{1^taint[ ]2 3}
-$таблица[^table:set{a b
-1 2
-}]
-$колонки[^таблица.columns[]]
-$колонки{
- ^menu{$column}[,].
+
+@tappend2[]
+$t[^table::set{a b}]^t.append{1 2}$t.a
+
+@badvsnprintf[]
+^connect[zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz]{
}
-
-^if($form:id ne 'z"'){
- ne
-}{
- eq
+@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{
-$one(1)
-$z(0)
-^eval(^one.int[]%0)
-
-}
+$news[^table::sql{select description from news}[$.limit(3)]]
+^news.menu{
+ ^untaint{$news.description}
-$form:id:
+}
+}
-^switch(2){
- ^case(1;4;3){143}
- ^case[DEFAULT]{default}
+$tables[^table::sql{select table_name from user_tables}]
+^tables.menu{
+$tables.table_name
}
-
-^switch(2){
- ^case(1;2;3){143}
- ^case[DEFAULT]{default}
+
}
-^switch(2){
- ^case(1;5;3){143}
+$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
-
-^switch(2){
- ^case(2){2}
+@thashforeach[]
+$h[
+ $.a[1]
+ $.b[2]
+]
+^h.foreach[key;value]{
+ $key=$value
}
-
-^switch[2]{
- ^case(2){![2]}
+@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}
+