|
|
| version 1.225, 2001/07/12 11:19:06 | version 1.463, 2001/11/05 10:43:00 |
|---|---|
| Line 1 | Line 1 |
| @USE | |
| dtformat.p | |
| input_date.p | |
| @href[href zzz;title xxxx;ставить] | |
| ^if($ставить){y;n} | |
| @main[] | @main[] |
| $string:z[1] | ^status[] |
| $path[/news/tululu/] | <hr> |
| $pieces[^path.lsplit[/]] | #^xchildren[] |
| $pieces{^count[]: ^menu{{$piece}}[,].} | #^thashforeach3[] |
| <hr> | #^thashforeach2[] |
| ^href[href;title](1<2) | #^thashforeach[] |
| #^thashdelete[] | |
| <hr> | #^connect[mysql://user:pass@cd.rinet.ru/db]{^void:sql{z} } |
| $stat[^file:stat[test.zip]] | #^tappend[] |
| $stat{ | #^sappend[] |
| ^$size=$size<br> | #^eval(10\3)<br> |
| adate=^long_date_format[$adate]<br> | #^tform[] |
| mdate=^long_date_format[$mdate]<br> | #^formattest[] |
| cdate=^long_date_format[$cdate]<br> | #^filelist[] |
| } | #^connect[mysql://user:pass@host]{ } |
| <hr> | #^безнадёжна_попытка_поправить_непоправимое[] |
| $дата[^input_date:parse[9.7.2001]] | #^tcache[] |
| ^long_date_format[$дата] | #^thashfileexp[] |
| <hr> | #^tcounter[] |
| $дата[^parse_date[9.7.2001]] | #^tablehash[] |
| ^long_date_format[$дата] | #j^hashfile[] |
| <hr> | #^formclass[] |
| $сегодня[^date:now[]] | #^hren[] |
| $недельный_календарь[^table:calendar[rus]($сегодня.year;$сегодня.month;$сегодня.day)] | #^domedit[] |
| <TT> | #^domxslt[] |
| $недельный_календарь{^menu{ | #^lsplit2[] |
| $year $month $day $weekday<BR> | #^faceesize[] |
| }} | #^imageresize[] |
| </TT> | #^ifassignhash[] |
| <hr> | #^tintdefault[] |
| $сегодня[^date:now[]] | #$response:status[404] |
| $месячный_календарь[^table:calendar[rus;$сегодня.year;$сегодня.month]] | #^ifpasshash[] |
| <TT> | #^movedir[] |
| ^месячный_календарь.menu{^for[i;0;6]{ | #^replace[] |
| $day[$месячный_календарь.$i] | #^set[] |
| ^if($day){$day}{ ^; ^;} | #^hash[]<hr> |
| }<BR>} | #$t[^methresult[]] ->$t |
| </TT> | #^terror[] |
| <hr> | #^ssave[] |
| before $время[^date:now[]]^время.string[]<br> | #^calendar[] |
| year+^время.roll[year](1)^время.string[]<br> | #^thash[] |
| month+^время.roll[month](1)^время.string[]<br> | #^tdef[] |
| year-^время.roll[year](-1)^время.string[]<br> | #^ford[] |
| month-^время.roll[month](-1)^время.string[]<br> | #^tif[] |
| day+^время.roll[day](1)^время.string[]<br> | #^image[] |
| day-^время.roll[day](-1)^время.string[]<br> | #^mail2[] |
| <hr> | #^cookie[] |
| $русский_день_недели[ | #^response[] |
| $0[Воскресенье] | #^regexp2[] |
| $1[Понедельник] | #^ttablerem[] |
| $2[Вторник] | #^pcre[] |
| $3[Среда] | #^regexp[]<hr> |
| $4[Четверг] | #^mail[] |
| $5[Пятница] | #^exec[] |
| $6[Суббота] | #^fori[] |
| ^tconnect[] | |
| ^xslt[] | |
| #^xml[] | |
| #^header[] | |
| <hr> | |
| ^status[] | |
| OK | |
| @status[] | |
| $c[$status:sql.cache] | |
| <table border=1> | |
| <tr> | |
| <td colspan=3> | |
| sql.cache | |
| </td> | |
| </tr> | |
| <td>url</td> | |
| <td>time</td> | |
| ^c.menu{ | |
| <tr> | |
| <td>$c.url</td> | |
| <td>$c.time</td> | |
| </tr> | |
| } | |
| </table> | |
| $c[$status:stylesheet.cache] | |
| <table border=1> | |
| <tr> | |
| <td colspan=3> | |
| stylesheet.cache | |
| </td> | |
| </tr> | |
| <td>file</td> | |
| <td>time</td> | |
| ^c.menu{ | |
| <tr> | |
| <td>$c.file</td> | |
| <td>$c.time</td> | |
| </tr> | |
| } | |
| </table> | |
| @xchildren[] | |
| $constructor[ | |
| <block1 name="main_srvr" type="0" label="Основное тело" /> | |
| <block2 name="main_srvr2" type="0" label="Основное тело" /> | |
| ] | ] |
| $время[^date:set(0;1;1;3;30;4)] | $constr[^xdoc::set{<?xml version="1.0" encoding="windows-1251" ?> |
| $время{ | <block-list>^untaint[as-is]{$constructor}</block-list>}] |
| ^string[]<br> | |
| ${year}.${month}.${day} ${hour}:${minute}:${second} | |
| } | |
| <hr> | |
| $время[^date:set(1.5)] | |
| ^время.string[] | |
| <hr> | |
| $сейчас[^date:now[]] | |
| ^^сейчас.string[]=^сейчас.string[] $день_недели($сейчас.weekday) $русский_день_недели.$день_недели<br> | |
| $floatdays($сейчас) ^floatdays.format{%.20f}<br> | |
| ^eval(^math:frac($floatdays)*24)<br> | |
| ^eval(^math:frac($floatdays*24)*60)<br> | |
| ^eval(^math:frac($floatdays*24*60)*60) | |
| <hr> | |
| PI=^math:PI.format{%.40f} | $children[$constr.documentElement.childNodes] |
| <hr> | ^if($children){ |
| ^math:random(10) | ^for[i](1;^children._count[]){ |
| <hr> | $node[$children.$i] |
| ^math:sqrt(16) | $node.nodeName<br> |
| <hr> | } |
| $люди[ | } |
| $2федя[ | |
| $рост[176] | |
| ] | @thashforeach3[] |
| $1василий[ | $h[ |
| $возраст[5] | $.a[1] |
| ] | $.b[2] |
| ] | ] |
| $c[^table::set{a | |
| $имена[^люди.keys[]] | ^h.foreach[key;value]{$value |
| $имена{ | }}] |
| ^sort{$key} | $c.a |
| ^menu{$key}[,]. | |
| @thashforeach2[] | |
| $h[ | |
| $.a[1] | |
| $.b[2] | |
| ] | |
| $c[ | |
| ^h.foreach[key;value]{ | |
| $.$key[$value] | |
| } | } |
| <hr> | ] |
| $c.b | |
| $таблица[^table:set{a b | @thashforeach[] |
| 1 2 | $h[ |
| }] | $.a[1] |
| $колонки[^таблица.columns[]] | $.b[2] |
| $колонки{ | ] |
| ^menu{$column}[,]. | ^h.foreach[key;value]{ |
| $key=$value<br> | |
| } | } |
| <hr> | @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[] | |
| ^if(def $form:new_file){y}{n} | |
| <form method="post" enctype="multipart/form-data"> | |
| <input type="file" name="new_file" /> | |
| <input type=submit> | |
| </input> | |
| ^if($form:id ne 'z"'){ | @formattest[] |
| ne | $size(15.124) |
| }{ | |
| eq | ^size.format{%.2f} |
| @filelist[] | |
| $html[^file:list[.;\.html^$]] | |
| ^html.menu{ | |
| $html.name<br> | |
| } | } |
| <hr> | <hr> |
| @безнадёжна_попытка_поправить_непоправимое[] | |
| $dom_from_disk[^xdoc::load[input.xml]] | |
| $dom_created_in_air[^xdoc::create[doc]] | |
| ^dom_created_in_air.documentElement.appendChild[^dom_from_disk.documentElement.cloneNode(1)] | |
| ^show-xdoc2[$dom_created_in_air] | |
| ^rem{ | |
| $one(1) | @tcache[] |
| $z(0) | #^hashfile:clear[cache] |
| ^eval(^one.int[]%0) | $code[^hashfile::open[$DB_HOME;cache]] |
| <hr> | ^code.cache[key](2){ |
| ^math:random(100) | |
| # ^code.delete[] | |
| } | } |
| $form:id: | |
| <hr> | |
| ^switch(2){ | @thashfileexp[] |
| ^case(1;4;3){143} | $hf[^hashfile::open[$DB_HOME;hashfile]] |
| ^case[DEFAULT]{default} | $hf.paf[$.value[крут] $.expires(3)] |
| } | paf=$hf.paf |
| <hr> | <hr> |
| ^switch(2){ | ^hf.foreach[key;value]{ |
| ^case(1;2;3){143} | $key=$value<br> |
| ^case[DEFAULT]{default} | |
| } | } |
| <hr> | <hr> |
| ^switch(2){ | $hash[^hf.hash[]] |
| ^case(1;5;3){143} | =$hash.paf= |
| } | |
| <hr> | <hr> |
| ^switch(2){ | |
| ^case(2){2} | |
| } | |
| <hr> | @tcounter[] |
| ^switch[2]{ | ^tcounterone[$DB_HOME] |
| ^case(2){![2]} | #other root: |
| #^tcounterone[${DB_HOME}2] | |
| #again, first: | |
| #^tcounterone[$DB_HOME] | |
| @tcounterone[DB_HOME] | |
| $counter[^hashfile::open[$DB_HOME;counter]] | |
| #^counter.clear[] | |
| ^counter.transaction{ | |
| # $counter.value(10) | |
| $counter.value($counter.value+1) | |
| # ^counter.delete[value] | |
| $counter.value | |
| } | } |
| <hr> | <hr> |
| ^rem{ | |
| $hash[^counter.hash[]] | |
| =$hash.value= | |
| <hr> | |
| } | |
| @tablehash[] | |
| $productList[^table::set{id name | |
| 1 носки | |
| 2 валенки | |
| 3 ушанка | |
| }] | |
| $hash[$a[1]] | #скажем, у первого дилера |
| ^hash.default[0] | $firstPriceList[^table::set{id price |
| ^rem{ | 1 0.3 |
| $target[targetval] | 3 1000 |
| $form_admin[formadminval] | }] |
| ^if(def $target){<head><base target=$target^if(def $form_admin){_a}></head>} | |
| ^if(def $target){<head><base target=${target}^if(def $form_admin){_a}></head>} | |
| если $target и $form_admin defined получаем | $firstPriceHash[^firstPriceList.hash[id]] |
| <head><base target={_a}></head> | |
| <hr> | ^productList.menu{ |
| продукт "$productList.name" | цена у first: $firstPriceHash.[$productList.id].price<br> | |
| } | } |
| #$string:a(1) | |
| #<hr> | |
| #^if(^log(11)){y}{n} | |
| #<hr> | |
| #@my_func[arg;z] | @hashfile[] |
| #2 | $hf[^hashfile::assign[hashfile]] |
| #$hf.paf[крут5] | |
| paf=$hf.paf | |
| #@z[] | @formclass[] |
| #^exp(^log(10)) | ^$form:CLASS.a=$form:CLASS.a |
| #<hr> | |
| #$a[^table:load[a<b]] | @domdata[] |
| ^rem{ | ^if(1){ |
| ^mail:send[ | # $a{^hren[]} |
| $from[paf@design.ru] | |
| $to[paf@design.ru] | |
| $subject[test] | |
| $body[here] | |
| ] | |
| <hr> | |
| } | } |
| -^eol[]- | $a |
| $xdoc[^xdoc::create[doc]] | |
| $doc[$xdoc.documentElement] | |
| $name[^doc.appendChild[^xdoc.createElement{name}]] | |
| $text[^name.appendChild[^xdoc.createTextNode{петросян ^;co}]] | |
| ^untaint[as-is]{=$text.nodeValue=} | |
| @domedit[] | |
| ^domdata[] | |
| #$paf.nodeName<br> | |
| #$doc.documentElement.nodeName<br> | |
| ^show-xnode1[$xdoc.documentElement;0;1] | |
| <hr> | <hr> |
| ^if(1<2){$a[1]} | ^show-xdoc2[$xdoc] |
| ^$a=$a | |
| <hr> | <hr> |
| <form method=post> | @domxslt[] |
| <input type=hidden name=a value=123> | ^domdata[] |
| <table border=1 width=250><tr><td>$form:name</td></tr></table> | ^show-xdoc2[^xdoc.transform[global.xsl;$.param1[123/]]] |
| <textarea name=name rows=5 cols=40>^untaint[html]{^default[$form:name;Пробный текст: А.Ф._Петросян <<Жизнь в Аду>> | |
| нажми Submit]}</textarea><BR> | |
| <input type=submit> | |
| </form> | |
| <hr> | <hr> |
| #^main[] | @lsplit2[] |
| #^use[$form:file] | $path[/optics/] |
| $pathTable[^path.lsplit[/]] | |
| ^pathTable.menu{ | |
| ^if(def $pathTable.piece){ | |
| =$pathTable.piece= | |
| } | |
| } | |
| $строка[вася ЗдЕсЬ] | |
| ^^строка.upper[]=^строка.upper[]<br> | |
| ^^строка.lower[]=^строка.lower[]<br> | |
| <hr> | |
| @faceesize[] | |
| $k(2) | |
| $pict[^image::load[paf.gif]] | |
| $small[^image::create($pict.width/$k;$pict.height/$k)] | |
| ^small.copy[$pict](0;0;$pict.width;$pict.height;0;0;$small.width;$small.height;250) | |
| $response:body[^small.gif[]] | |
| $a[12] | @imageresize[] |
| ^a.int[] | $k(2) |
| $pict[^image::create(400*$k;200*$k)] | |
| $pict.line-width(2) | |
| ^pict.arc($pict.width/2;$pict.height/2;$pict.width-1;$pict.height-1;0;360;0x000000) | |
| ^pict.arc($pict.width/2;$pict.height/2;$pict.width-20;$pict.height-20;0+20;360-20;0xff0000) | |
| #^pict.arc($pict.width/2;$pict.height/2;$pict.width;$pict.height;0;360;0xff0000) | |
| ^pict.circle($pict.width/2;$pict.height/2;$pict.height/2-20;0x0000ff) | |
| ^pict.arc($pict.width/2;$pict.height/2;$pict.height-26;$pict.height-26;0+20;360-20;0xff0000) | |
| $response:body[^pict.gif[]] | |
| <hr> | #$small[^image::create($pict.width/$k;$pict.height/$k)] |
| #^small.copy[$pict](0;0;$pict.width;$pict.height;0;0) | |
| #^small.copy[$pict](0;0;$pict.width;$pict.height;0;0;$small.width;$small.height;0) | |
| #$response:body[^small.gif[]] | |
| $t[^table:set{key value | |
| 1 v1 | |
| 2 v2}] | |
| $h[^t.hash[key]] | |
| ^sql_test[$SQL.connect-string] | @tintdefault[] |
| #^sql_test[mysql://test:test@localhost/test/cp1251_koi8] | #$abc[abc] |
| $abc[33] | |
| ^abc.int[z] | |
| #^abc.int(123) | |
| <HR> | @ifassignhash[] |
| $abc{} | $h[^if(1){$.a(1);$.a(2)}] |
| $tn[^table:set[nameless]{a1 b1 | $h.a |
| a2 b2 | |
| }] | @ifpasshash[] |
| $x[^tn.locate[0;a2]] | $a[$.e[a]] |
| ^$tn.1=$tn.1 | $b[$.e[b]] |
| <hr> | ^ifpasshashdest[^if(1){$a;$b}] |
| $t0[^table:set{key a b | #$x[^if(1){$a}{$b}] |
| 1 a1 | #^ifpasshashdest[$x] |
| 2 a2 b2 | |
| @ifpasshashdest[p] | |
| $p.e | |
| @movedir[] | |
| ^file:move[a;deeper/a] | |
| @replace[] | |
| $a[12^;3] | |
| ^a.replace[^table::set{from to | |
| 2^; ! | |
| }] | }] |
| ^if(^t0.locate[key;2] && "a" ne "b"){y;n} | |
| @set[] | |
| ^setdata[] | |
| ^a.add[$b] | |
| add:$a.3<br> | |
| ^setdata[] | |
| ^a.sub[$b] | |
| sub2:$a.2<br> | |
| sub1:$a.1<br> | |
| ^setdata[] | |
| $c[^a.union[$b]] | |
| union3:$c.3<br> | |
| union2:$c.2<br> | |
| ^setdata[] | |
| $c[^a.intersection[$b]] | |
| intersection3:$c.3<br> | |
| intersection2:$c.2<br> | |
| ^setdata[] | |
| intersects:^if(^a.intersects[$b]){y;n}<br> | |
| intersects2:^if(^a.intersects[ ]){y;n}<br> | |
| <hr> | <hr> |
| $currentFolder[/a/b] | |
| $path[^currentFolder.lsplit[/]] | @setdata[] |
| ^path.flip[] | $a[$.1[a1] $.2[a2]] |
| $path{ | $b[ $.2[b2] $.3[b3]] |
| ^menu{$0}{,} | |
| } | |
| <hr> | @hash[] |
| $t1[^table:set{key value | $h[^hash::create[$._default[123]]] |
| 1 v1 | $h.paf[not kretin] |
| 2 v2}] | $h.paf<br> |
| $h1[^t1.hash[key]] | =$h.that=<br> |
| ^h1.default[$value[nothing]] | |
| ^$h1.2.value=$h1.2.value<br> | @methresult[] |
| ^$h1.2x.value=$h1.2x.value<br> | $result[^table::set{1}] |
| <hr> | |
| $t2[^table:set{key a b | @terror[] |
| 1 a1 | ^error[method z must be called with z] |
| 2 a2 b2 | |
| @syntax1[] | |
| #^a[^b] | |
| @syntax2[] | |
| #^a[ | |
| @ssave[] | |
| $abc[abc] | |
| ^abc.save[abc] | |
| @calendar[] | |
| 2001;11:<br> | |
| $week_days[^date:calendar[rus](2001;11)] | |
| <pre> | |
| ^week_days.menu{^for[wday](0;7){^if($week_days.$wday){$week_days.$wday; ^; ^;} }<br>} | |
| </pre> | |
| @thash[] | |
| $table[^table::set{id name age | |
| 1 paf 278 | |
| 2 пиф 234 | |
| }] | }] |
| t2 ^if(^t2.empty[]){empty}{not empty}<br> | $hash[^table.hash[id;^table::set[nameless]{id |
| ^t2.offset(1) | name}]] |
| $t2.b | $hash.2.id $hash.2.name $hash.2.age |
| $r[^t2.record[]] | |
| <hr> | |
| $th[^t2.hash[b]] | |
| ^$th.b2.a=$th.b2.a<br> | |
| <hr> | |
| $th[^t2.hash[key;a]] | |
| ^$th.2.a=$th.2.a<br> | |
| <hr> | |
| #^OP:eval(1<2) | |
| $filelist[^table:dir[.]] | @tdef[] |
| $s[0] | |
| if 0=^if($s){}{n}<br> | |
| if def 0=^if(def $s){y}{}<br> | |
| <hr> | <hr> |
| $t2[^table:set{dir title | |
| /here Here | |
| }] | |
| $t2{^menu{${dir}-$title}[,]} | |
| <HR> | |
| $dir[news] | |
| $list[^table:dir[$dir]] | |
| ^list.menu{ | |
| $subdir[$dir/$list.name] | |
| $sublist[^table:dir[$subdir]] | |
| ${list.name}/ $sublist{^menu{$name}[,]}<br> | |
| } | |
| <HR> | |
| ^if(in "/otherdeeper"){y;n} | |
| <HR> | |
| ^^table:dir[/]:<BR> | |
| $d[^table:dir[/]] | |
| $d{^menu{$name  ^; ^; ^; ^;^if(-f $name){-f} ^if(-d $name){-d};<BR>}} | |
| <HR> | |
| $files[^table:set{name}] | |
| $d{^menu{ | |
| ^if(-d "$name"){ | |
| ^:files.append{$name} | |
| } | |
| }} | |
| $files{^menu{$name}[,]} | @ford[] |
| <HR> | ^for[i](0;5){$i}{($i)} |
| @exception[origin;source;comment;type;code][i;j] | @tif[] |
| <body bgcolor=black> | ^if[def]{y;n} |
| <font color=white> | |
| ERROR: | |
| ^if(def $source){$origin '$source'} | |
| ${comment}. | |
| ^if(def $type){type=$type} | |
| ^if(def $code){code=$code} | |
| @auto_test[] | |
| ^BASE.auto_test[] | |
| <li>${request:uri}! | |
| @end | |
| @sql_test[connect-string] | |
| #^rem{ | |
| #^for[i](1;2){ | |
| ^connect[$connect-string]{ | |
| $shit[^taint[our's]] | |
| # $paf[^table:sql{insert into paf (name, age) values ('$shit', ^random:generate(10000))}] | |
| ^void:sql{update paf set age=age+1} | |
| $paf[^table:sql{select * from paf order by id desc}(5)] | |
| $paf{ | |
| ^if(^empty[]){query result is empty}{ | |
| <table border=1> | |
| <tr><td>id</td><td>name</td><td>age</td></tr> | |
| ^menu{<tr><td>$id</td><td>$name</td><td>$age</td></tr>} | |
| </table> | |
| }} | |
| ^^string:sql{select name from paf where id=1}=^string:sql{select name from paf where id=1}<br> | |
| ^^int:sql{select age from paf where id=1}=^int:sql{select age from paf where id=1}<br> | |
| ^^double:sql{select age from paf where id=1}=^double:sql{select age from paf where id=1}<br> | |
| $paf[^hash:sql{select id,age from paf}] | @image[] |
| ^$paf.2.age=$paf.2.age<br> | $pict[^image::create(400;200)] |
| } | ^pict.arc($pict.width/2;$pict.height/2;$pict.width-1;$pict.height-1;0;360;0x000000) |
| #} | ^pict.arc($pict.width/2;$pict.height/2;$pict.width-10;$pict.height-10;0+10;360-10;0xff0000) |
| #^pict.arc($pict.width/2;$pict.height/2;$pict.width;$pict.height;0;360;0xff0000) | |
| ^pict.circle($pict.width/2;$pict.height/2;$pict.height/2-10;0x0000ff) | |
| ^pict.arc($pict.width/2;$pict.height/2;$pict.height-26;$pict.height-26;0+10;360-10;0xff0000) | |
| $response:body[^pict.gif[]] | |
| @mail2[] | |
| ^mail:send[ | |
| $.content-type[$.value[text/plain] $.charset[windows-1251]] | |
| $.from[Александр Петросян <paf@design.ru>] | |
| $.to[Александр Петросян <paf@design.ru>] | |
| $.subject[проверка] | |
| $.body[проверка] | |
| ] | |
| @cookie[] | |
| $env:HTTP_COOKIE<br> | |
| #$cookie:переменная[test тест ТЕСТ2] | |
| =$cookie:переменная=<br> | |
| #$cookie:переменная2[test тест ТЕСТ3] | |
| =$cookie:переменная2=<br> | |
| =$cookie:CLASS.переменная2=<br> | |
| @response[] | |
| #^if($form:reload){ | |
| $response:refresh[$.value[0] $.url[./t.html?uri=$env:SERVER_NAME]] | |
| #} | #} |
| @eol[] | @xslt[] |
| eol | ^xdata[] |
| $transformed[^xdoc.transform[global.xsl;$.param1[123/]]] | |
| ^show-xdoc2[$transformed] | |
| @regexp2[] | |
| $s[ select] | |
| $s[^s.match[^^\s*][]{!}] | |
| $s | |
| @header[] | |
| $response:refresh[ | |
| $.value[0] | |
| $.url[http://design.ru?a=^taint[123]] | |
| ] | |
| @ttablerem[] | |
| $table[^table::load[a.cfg]] | |
| ^table.menu{$table.a} | |
| @tconnect[] | |
| ^connect[mysql://test:test@paf/test?charset=cp1251_koi8&compress=1&timeout=1&named_pipe=1]{ | |
| $tables[^table::sql{show tables}] | |
| #$cols[^tables.columns[]] | |
| #$cols.column | |
| ^tables.menu{ | |
| $tables.[Tables_in_test]<br> | |
| } | |
| } | |
| @pcre[] | |
| $s[1 2] | |
| ^s.match[\s;ig]{!} | |
| #^s.match[\d;ig]{!} | |
| @regexp[] | |
| $s[abcАБВ] | |
| ^if(^s.match[б][i]){y}{n} | |
| @mail[] | |
| #$ORIGINS(1) | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[paf@design.ru] | |
| $.body[1 | |
| 2 | |
| 3] | |
| ] | |
| @exec[] | |
| $a[^file::exec[fc.exe;;a;b]] | |
| $a.status|$a.stderr<hr> | |
| @fori[][i] | |
| ^for[i](1;3){... =$i= ...} | |
| @xdata[] | |
| #$response:content-type[$.value[text/html] $.charset[windows-1251]] | |
| $xdoc[^xdoc::load[input.xml]] | |
| @xml[] | |
| ^xdata[] | |
| ^show-xdoc2[$xdoc]<hr> | |
| #^show-xnode1[$xdoc]<hr> | |
| $people[^xdoc.select[*/man]] | |
| #^show1[] | |
| ^show-xnodes1[$people]<hr> | |
| #^people.0.owner.hren[] | |
| ^show-xnode1[^xdoc.selectSingle[*/man[2]/name];0;1]<hr> | |
| by id: | |
| ^show-xnode1[^xdoc.getElementById[1];0;1] | |
| <hr> | |
| @show1[array] | |
| ^for[i](0;^array._count[]-1){ | |
| $x[$array.$i] | |
| $x.firstChild.nodeValue: | |
| $pattributes[$x.parentNode.attributes] | |
| ^if(^pattributes._count[]){ | |
| $pattributes.id.name=$pattributes.id.nodeValue | |
| } | |
| <br> | |
| } | |
| @show-xnodes1[array][i] | |
| ^for[i](0;^array._count[]-1){ | |
| ^show-xnode1[$array.$i;0;1] | |
| } | |
| @show-xnode1[x;level;single][l] | |
| ^if(def $x){ | |
| ^for[l](0;$level-1){ ^; ^; ^; ^;} | |
| ^if($x.nodeType == $xnode:ELEMENT_NODE){ | |
| <^;$x.nodeName | |
| $pairs[$x.attributes] | |
| ^if(def $pairs){ | |
| $names[^pairs._keys[]] | |
| ^names.menu{ $names.key="$pairs.[$names.key].nodeValue"} | |
| } | |
| >^; | |
| }{ | |
| [$x.nodeType] | |
| } | |
| ^if(def $x.nodeValue){$x.nodeValue}<br> | |
| ^show-xnode1[$x.firstChild]($level+1) | |
| ^if(!$single){ | |
| ^show-xnode1[$x.nextSibling]($level) | |
| } | |
| ^if($x.nodeType == $xnode:ELEMENT_NODE){ | |
| ^for[l](0;$level-1){ ^; ^; ^; ^;}<^;/$x.nodeName>^;<br> | |
| } | |
| } | |
| @show-xdoc2[xdoc] | |
| ^xdoc.save[save.xml; | |
| # $.encoding[windows-1251] | |
| $.method[xml] | |
| ] | |
| $file[^xdoc.file[ | |
| # $.encoding[windows-1251] | |
| $.method[html] | |
| ]] | |
| ^file.save[text;save_file.html] | |
| <pre>^taint[^xdoc.string[]] | |
| # $.encoding[windows-1251] | |
| # $.method[html] | |
| #]] | |
| </pre> | |
| @default[test;def] | |
| $result[^if(^test.length[]){$test}{$def}] |