--- parser3/www/htdocs/Attic/index.html 2002/06/20 15:42:29 1.72
+++ parser3/www/htdocs/Attic/index.html 2002/09/16 15:21:36 1.139
@@ -1,28 +1,39 @@
-#@USE
-#t.p
+@USE
+/derived.p
@auto[filespec]
$selffilespec[$filespec]
#$form:here
+#$request:charset[UTF-8]
$request:charset[windows-1251]
$response:charset[windows-1251]
-$response:content-type[$.value[text/html]$.charset[$response:charset]]
+#$response:charset[UTF-8]
+#$response:charset[empty]
+#$response:content-type[$.value[text/html]$.charset[$response:charset]]
#@postprocess[body]
#$body
#$result[123]
-@f[a;b]
-
@main[]
#$a(123)
#^a.format[%.10u]
#$result[111]
#^f[a]
-
#^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{
-# ^int:sql{select news_id from news where news_id=-1}[$.default{2}]
+# ^int:sql{select news_id from news where news_id=-1}[
+## $.default{2}
+# ]
+# ^hash::sql{bad}
# ^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*' ^; }
+#$card_sequence_expect_no(^double:sql{select 20020909131047 #card_sequence_expect_no from card_sequence})
+#^card_sequence_expect_no.format[%15.f]
#}
#^eval(2)
#^tcrashlocaljunctionsv2[]
@@ -44,7 +55,6 @@ $response:content-type[$.value[text/html
#^subjvaltest[]
#^tableselect0[]
#^memnotest1[]
-#^transparams[]
#^voidparams[]
#^rolls2[]
#^cacheexpireschanging[]
@@ -74,7 +84,6 @@ $response:content-type[$.value[text/html
#^precisionProblem[]
#^xpath[]
#^ttablesetlang[]
-#^mail3[]
#^ttime[]
#^tupper[]
#^treplace[]
@@ -132,21 +141,17 @@ $response:content-type[$.value[text/html
#$t[^methresult[]] ->$t
#^terror[]
#^ssave[]
-#^calendar[]
#^thash[]
#^tdef[]
#^ford[]
#^tif[]
#^image[]
-#^mail2[]
-#^cookie[]
#^response[]
#^regexp2[]
#^ttablerem[]
#^pcre[]
#^regexp[]
#^mail[]
-#^exec[]
#^fori[]
#^tconnect[]
#^xslt[]
@@ -183,7 +188,480 @@ $response:content-type[$.value[text/html
#^xdocsave[]
#^div[]
#^datecreatestring3[]
-^tfilespec[]
+#^tfilespec[]
+#^tcrypt[]
+#^cryptdocsample[]
+#^tnormalize[]
+#^xmltransformbyxdoc[]
+#^sergestrandef[]
+#^tstdin[]
+#^tfind[]
+#^mimet[]
+#^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[]
+#^html-почта[]
+#^badswitchtest[]
+#^okswitchtest[]
+#^cgit[]
+#^ttransformsep[]
+#^calltest[]
+#^xpath3[]
+#^doubleliterals[]
+#^newxor[]
+#^mail2[]
+#^exec[]
+^passpost[]
+
+OK
+
+@passpost[]
+
+
+^if(def $form:text){
+ $a[^file::cgi[a.pl]]
+ $a.text|$a.status|$a.stderr
+}
+
+@exec[]
+#$a[^file::exec[a.cmd]]
+$a[^file::cgi[a.cmd]]
+$a.text|$a.status|$a.stderr
+
+
+@newxor[]
+^eval(1!|2 #примечание()zzz
+|0x100)
+#^eval(1!||2)
+^if(1!|1){y}{n}
+
+#@method[$bad]
+
+@doubleliterals[]
+#^eval(1e-10)
+^eval("1e-20")
+
+@xpath3[]
+$constr[^xdoc::create{ }]
+$objectData[^constr.selectSingle[/constructor-data/object]]
+$objectData.nodeType
+$objectData.firstChild.nodeValue
+
+@calltest[]
+^calltest2[string]
+
+@calltest2[s]
+$s
+
+@ttransformsep[]
+$input[^xdoc::load[20020909131046.xml]]
+$output[^input.transform[generated.xsl]]
+^output.string[]
+
+@okswitchtest[]
+$local[local value]
+^switch[1]{
+ ^case[1]{1code $local}
+}
+
+@badswitchtest[]
+^switch[1]{
+ ^badswitchtestcase[]
+}
+@badswitchtestcase[][local]
+$local[local value]
+ ^case[1]{1code $local}
+
+@badjunction[]
+^badj1[]
+^badj2[]
+
+@html-почта[]
+$переменная[значение]
+^mail:send[
+ $.from[paf@mail]
+ $.to[paf@mail]
+ $.subject[htmltest1]
+ $.html{тест$переменная= !}
+]
+
+
+@грязные-cookie[]
+$cookie:a[&]
+$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}[,]
+
+#$table[^abc.split[.;h]]
+$table[^abc.split[.;hr]]
+$table.0,$table.1,$table.2
+
+@delimiters[]
+$a#1[1]
+$a#1=
+
+
+@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=
+
+
+@staticstest2[]
+^$derived:derived_var=$derived:derived_var
+^$derived:a=$derived:a
+$derived:a[changed] ^$derived:a=$derived:a
+$derived:derived_var[changed]
+^$derived:derived_var=$derived:derived_var
+
+@staticstest[]
+$derived[^derived::create[]]
+^derived.test[]
+
+^$derived.a=$derived.a
+^$derived.x=$derived.x
+
+^if($derived is derived){derived is derived}{error: derived is not derived}
+^if($derived is table){derived is table}{error:derived is not table}
+
+^^eval(^$derived)=^eval($derived)
+^^if(^$derived)=^if($derived){y}{n}
+
+
+@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
+$now.yearday
+#
+$date[^date::create(2002;1;3)]
+$date.daylightsaving
+$date.yearday
+
+@mail4[]
+^mail:send[
+ $.from[paf@mail.design.ru]
+ $.to[paf@mail.design.ru]
+ $.subject[^taint[uri][москва]=2]
+ $.text[^taint[uri][москва]=]
+ $.html{link}
+]
+@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}[,]
+
+@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}[,]
+
+@cgit[]
+$f[^file::cgi[showenv.cmd]]
+$f.HELLO=
+$f.CONTENT-TYPE=
+$f.content-type=
+
+
+@mimet[]
+$f[^file::stat[a.GIF]]
+$f.content-type
+
+
+@tfind[]
+^file:find[index.html]
+
+@tstdin[]
+$f[^file::exec[test.pl;$.stdin[проверка stdin потока]]]
+$f.text
+
+@sergestrandef[]
+$sQuantity[ ]
+^sQuantity.int(10)
+
+@xmltransformbyxdoc[]
+$xdoc[^xdoc::set{^process{
+
+
+
+ 1 2
+
+
+}}]
+$sheet[^xdoc::create{
+
+
+
+
+
+
+defparam1
+defparam2
+
+
+
+ param1=
+ param2=
+
+ test return
+
+
+
+ test return3
+
+
+
+
+ z
+ para1=
+
+
+
+
+
+
+
+
+
+
+}]
+
+
+$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 html value ^taint[<] 10}
+]
+
+@text-n-html[]
+^mail:send[
+ $.from[paf]
+ $.to[paf]
+ $.text[
+ $.value[this is text value]
+ ]
+ $.html[
+ $.value{this is html 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 html 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]
+^math:crypt[123;^$apr1^$]
@tfilespec[]
src=$selffilespec
@@ -949,13 +1427,13 @@ $t[^table::set{^untaint{^taint[$a-tab-b]
@mail3[]
^mail:send[
- $.from[Александр Петросян ]
- $.to[Александр Петросян ]
- $.subject[проверка4]
+ $.from[Александр Петросян ]
+ $.to[Александр Петросян ]
+ $.subject[проверка2]
$.body[
$.text[
$.content-type[$.value[text/plain] $.charset[windows-1251]]
- $.body[проверка]
+ $.body[проверка^taint[uri][москва]=]
]
$.attachment[
$.value[^file::load[text;index.html]]
@@ -1414,10 +1892,12 @@ $abc[abc]
^abc.save[abc]
@calendar[]
-2001;11:
-$week_days[^date:calendar[rus](2001;11)]
+$year(2002)
+$month(12)
+${year}-${month}:
+$week_days[^date:calendar[rus]($year;$month)]
-^week_days.menu{^for[wday](0;7){^if($week_days.$wday){$week_days.$wday; ^; ^;} }
}
+^week_days.menu{^for[wday](0;6){^if($week_days.$wday){$week_days.$wday; ^; ^;} }=$week_days.week,$week_days.year=
}
@thash[]
@@ -1454,15 +1934,16 @@ $response:body[^pict.gif[]]
@mail2[]
^mail:send[
+ $.message-id[<6615%1@parser.ru>]
$.content-type[$.value[text/plain] $.charset[windows-1251]]
$.from[Александр Петросян ]
$.to[Александр Петросян ]
- $.subject[проверка]
- $.body[проверка]
+ $.subject[проверка проверка]
+ $.text[проверка]
]
@cookie[]
-$env:HTTP_COOKIE
+#$env:HTTP_COOKIE
#$cookie:переменная[test тест ТЕСТ2]
=$cookie:переменная=
@@ -1528,10 +2009,6 @@ $s[abcАБВ]
3]
]
-@exec[]
-$a[^file::exec[fc.exe;;a;b]]
-$a.status|$a.stderr
-
@fori[][i]
^for[i](1;3){... =$i= ...}