--- parser3/www/htdocs/Attic/index.html 2002/04/30 10:40:58 1.56 +++ parser3/www/htdocs/Attic/index.html 2002/08/06 12:48:15 1.87 @@ -1,21 +1,28 @@ -@USE -t.p +#@USE +#t.p -@autoz[] -$request:charset[windows-1251] -$response:charset[windows-1251] -$response:content-type[$.value[text/html]$.charset[$response:charset]] - -@postprocess[body] -#=$env:HTTP_TEST=
-#=$env:REDIRECT_HTTP_TEST=
-#
-$body -
-OK +@auto[filespec] +$selffilespec[$filespec] +#$form:here +#$request:charset[UTF-8] +#$response:charset[windows-1251] +#$response:content-type[$.value[text/html]$.charset[$response:charset]] + +#@postprocess[body] +#$body +#$result[123] @main[] -#^sqldefaults[] +#$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} + ]
+ ^string:sql{select news_id from news where news_id=-1}[$.default{2}] +} #^eval(2) #^tcrashlocaljunctionsv2[] #^tcrashlocaljunctions[] @@ -124,7 +131,6 @@ OK #$t[^methresult[]] ->$t #^terror[] #^ssave[] -#^calendar[] #^thash[] #^tdef[] #^ford[] @@ -145,11 +151,481 @@ OK #^xml[] #^header[] #^tablehasht[] - #^datecreatestring[] #^mssqltypes1[] #^badthrows[] -^xmlspace[] +#^xmlspace[] +#^counter[main.counter] +#^xpath2[] +#^callindirect[] +#^junctionprob[] +#^datecreatestring2[] +#^tstoredproc[] +#^tstoredproc2[] +#^forkeys[] +#^pngsize[] +#^checkList[] +#^datetest[] +#^tserge[] +#^envt[] +#^selectt[] +#^select2[] +#^selectSingle2[] +#^selectString2[] +#^selectNumber2[] +#^selectBool2[] +#^xdoccreate[] +#^xdoccreatetag[] +#^xdocload[] +#^xdocstring[] +#^xdocsave[] +#^div[] +#^datecreatestring3[] +#^tfilespec[] +#^tcrypt[] +#^cryptdocsample[] +#^sendtests[] +#^tnormalize[] +#^xmltransformbyxdoc[] +#^sergestrandef[] +#^tstdin[] +#^tfind[] +#^calendar[] +#^mimet[] +^cgit[] +
+OK + +@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
+dirname=^file:dirname[$selffilespec]
+basename=^file:basename[$selffilespec]
+justname=^file:justname[$selffilespec]
+justext=^file:justext[$selffilespec]
+ +@datecreatestring3[] +$new_after[^date::now(-3)] +$articles[^table::create{id title last_update +1 привет 2002-07-03}] +^articles.menu{ + $last_update[^date::create[$articles.last_update]] + $articles.title + ^if($last_update > $new_after){новая} +
+} + +@div[] +$var(5) +^var.inc(7) +^var.dec(3) +^var.div(4) +^var.mul(2) +$var + + +@xdocsave[] +$document[^xdoc::create{ + +строка1
+строка2
+
}] +^document.save[test.xml] + +@xdocstring[] +$document[^xdoc::create{ + +строка1
+строка2
+
}] +^document.string[ + $.method[html] +] + + +@xdocload[] +$document[^xdoc::load[article.xml]] +$response:body[^document.file[$.media-type[text/xml]]] + + +@xdoccreatetag[] +$document[^xdoc::create[document]] +$paraNode[^document.createElement[para]] +$dummy[^document.documentElement.appendChild[$paraNode]] +$response:body[^document.file[$.media-type[text/xml]]] + + +@xdoccreate[] +$document[^xdoc::create{ + +текст +}] +$response:body[^document.file[$.media-type[text/xml]]] + +@selectBool2[] +$d[^xdoc::set{ +}] +^if(^d.selectBool[/t/@n > 10]){ + /t/@n больше 10 +}{ + не больше +} + + +@selectNumber2[] +$d[^xdoc::set{ +}] +^d.selectNumber[number(/t/@n)+1]
+^d.selectNumber[2*2]
+ + +@selectString2[] +$d[^xdoc::set{ +}] +# результат=привет +^d.selectString[string(t/@attr)] + + +@selectSingle2[] +$d[^xdoc::set{ +}] +# результат=один элемент "t" +$element[^d.selectSingle[t]] +# результат=2 (количество атрибутов ) +Количество атрибутов: ^element.attributes._count[]
+# результат=не существует (нет ) +^if(^d.select[x]){ + x существует +}{ + x не существует +} + +@select2[] +$d[^xdoc::set{}] +# результат: список из одного элемента "t" +$list[^d.select[t]] +# результат: 2 = количество атрибутов +^list.0.attributes._count[]
+^for[i](0;$list-1){ + $attr[$list.$i] + $attr.nodeName = $attr.nodeType
+} + + +@selectt[] +$d[^xdoc::set{}] +$list[^d.select[t]] +^list.0.attributes._count[] + +@envt[] +$f[^file::exec[showenv.cmd; + $.bad[value] + $.CGI_good[value] +]] +$f.status
+$f.stderr
+
$f.text
+ + +@tserge[] +^if(" 09 "){y} + +@datetest[] + $f[^file::stat[some.zip]] +Размер в байтах: $f.size
+Год создания: $f.cdate.year
+$now[^date::now[]] +$DAYS_CONSIDERED_NEW(3) +Статус: ^if($f.mdate >= $now-$DAYS_CONSIDERED_NEW){новый;старый} + + +@checkList[] +...^oneOf[a;a,b,c]...
+#...^oneOf[a;ax,b,c]...
+...^oneWord[word]...
+#...^oneWord[wo rd]...
+ + +@oneOf[s;list][t] выдаёт строку, если строка она есть в списке(разделенном запятыми) +$t[^list.lsplit[,]] +^if(!^t.locate[piece;$s]){^throw[user;$s;unknown]} +$result[$s] + +@oneWord[s] +^if(^s.match[\W]){^throw[user.data;$s;not word]}{$s} + +@pngsize[] +$i[^image::measure[test.png]] +^i.html[] + + +@forkeys[] +$text[^form:fields.foreach[key;val]{$key=$val +}] +^text.save[ttt.txt] +=$text= + + +@tstoredproc2[] +^connect[odbc://DSN=nestle^;UID=nestle^;PWD=mbm32]{ + ^void:sql{exec pafvoid} +} + +@tstoredproc[] +^connect[odbc://DSN=nestle^;UID=nestle^;PWD=mbm32]{ + $t[^table::sql{exec pafproc}] +# $t[^table::sql{{call pafproc}}] + $c[^t.columns[]] + ^c.menu{$c.column}[
] +} + +@datecreatestring2[] + +^datecreatestring2show[2000] +^datecreatestring2show[2000-02] +^datecreatestring2show[2000-2-03] +^datecreatestring2show[2000-02-03 15] +^datecreatestring2show[2000-02-03 15:30] +^datecreatestring2show[2000-02-03 15:30:04] +^datecreatestring2show[2000-02-03 15:30:04 hren] +^datecreatestring2show[15:30] +^datecreatestring2show[15:30:05] +^datecreatestring2show[15:30:05 hren] +
+ +@datecreatestring2show[s] +$date[^date::create[$s]] + +$s^date.sql-string[] + + + +@junctionprob[][l] +$l[123] +$a{$l} +^junctionprobnested[$a] +@junctionprobnested[p] +$p + + +@callindirecttarget[] +callindirecttarget called +@callindirect[] +$f[$callindirecttarget] +^f[] + +@xpath2[] +$xdoc[^xdoc::create{ + + + + + + +}] + +#^xdoc.string[] + +$fieldList[^xdoc.selectSingle[/doc/field-list]] +#^fieldList.childNodes._count[] +$fields[^fieldList.select[field]] +#^fields._count[] +^fields.foreach[k;node]{ + $node.nodeName
+} +@counter[filespec][f;s] +^file:lock[$filespec]{ + $f[^file::load[text;$filespec]] + $s[^eval($f.text+1)] + ^s.save[$filespec] +} +$s @xmlspace[] $xdoc[^xdoc::set{^process{ @@ -206,6 +682,10 @@ $h[^t.hash[p]] ^int: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}] } +======= +
+OK +>>>>>>> 1.50 @tcrashlocaljunctionsv2[] $a[ @@ -1132,10 +1612,12 @@ $abc[abc] ^abc.save[abc] @calendar[] -2001;11:
-$week_days[^date:calendar[rus](2001;11)] +$year(2002) +$month(8) +${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=
}
@thash[]