Annotation of parser3/src/www/htdocs/index.html, revision 1.233
1.222 parser 1: @USE
2: dtformat.p
3: input_date.p
4:
1.223 parser 5: @href[href zzz;title xxxx;ставить]
6: ^if($ставить){y;n}
7:
1.228 parser 8:
9: @call[name][method]
10: $method[$$name]
11: ^if(def $method){^method[]}
12:
13: @test1[]
14: test1 result
15:
1.233 ! parser 16: @odbc_test[]
! 17: ^connect[odbc://dsn=voz7^;uid=voz^;pwd=pwd]{
! 18: $пресса[^table:sql{select * from press}]
! 19: $пресса{^menu{
! 20: $id, $date_row, $header, $short_text^rem{, $full_text}, $mode
! 21: }[<br>]}
! 22: }
! 23: <hr>
! 24:
1.212 parser 25: @main[]
1.233 ! parser 26: ^odbc_test[]
1.231 parser 27: $a_1[a_1 value]
28: $a_1<hr>
29:
1.229 parser 30: ^eval(2*11)
1.228 parser 31: ^call[test1]
32: <hr>
1.227 parser 33: $input_date:input_date_auto_test
1.226 parser 34: <hr>
35: #$string:z[1]
36: #<hr>
1.224 parser 37: $path[/news/tululu/]
38: $pieces[^path.lsplit[/]]
39: $pieces{^count[]: ^menu{{$piece}}[,].}
40: <hr>
1.223 parser 41: ^href[href;title](1<2)
42:
43: <hr>
44: $stat[^file:stat[test.zip]]
45: $stat{
46: ^$size=$size<br>
47: adate=^long_date_format[$adate]<br>
48: mdate=^long_date_format[$mdate]<br>
49: cdate=^long_date_format[$cdate]<br>
50: }
51: <hr>
1.222 parser 52: $дата[^input_date:parse[9.7.2001]]
53: ^long_date_format[$дата]
54: <hr>
55: $дата[^parse_date[9.7.2001]]
56: ^long_date_format[$дата]
57: <hr>
1.221 parser 58: $сегодня[^date:now[]]
59: $недельный_календарь[^table:calendar[rus]($сегодня.year;$сегодня.month;$сегодня.day)]
60: <TT>
61: $недельный_календарь{^menu{
62: $year $month $day $weekday<BR>
63: }}
64: </TT>
65: <hr>
66: $сегодня[^date:now[]]
67: $месячный_календарь[^table:calendar[rus;$сегодня.year;$сегодня.month]]
68: <TT>
69: ^месячный_календарь.menu{^for[i;0;6]{
70: $day[$месячный_календарь.$i]
71: ^if($day){$day}{ ^; ^;}
72: }<BR>}
73: </TT>
74: <hr>
1.220 parser 75: before $время[^date:now[]]^время.string[]<br>
76: year+^время.roll[year](1)^время.string[]<br>
77: month+^время.roll[month](1)^время.string[]<br>
78: year-^время.roll[year](-1)^время.string[]<br>
79: month-^время.roll[month](-1)^время.string[]<br>
80: day+^время.roll[day](1)^время.string[]<br>
81: day-^время.roll[day](-1)^время.string[]<br>
82: <hr>
83: $русский_день_недели[
84: $0[Воскресенье]
85: $1[Понедельник]
86: $2[Вторник]
87: $3[Среда]
88: $4[Четверг]
89: $5[Пятница]
90: $6[Суббота]
91: ]
92:
93: $время[^date:set(0;1;1;3;30;4)]
94: $время{
95: ^string[]<br>
96: ${year}.${month}.${day} ${hour}:${minute}:${second}
97: }
98: <hr>
99: $время[^date:set(1.5)]
100: ^время.string[]
101: <hr>
102: $сейчас[^date:now[]]
103: ^^сейчас.string[]=^сейчас.string[] $день_недели($сейчас.weekday) $русский_день_недели.$день_недели<br>
104: $floatdays($сейчас) ^floatdays.format{%.20f}<br>
105: ^eval(^math:frac($floatdays)*24)<br>
106: ^eval(^math:frac($floatdays*24)*60)<br>
107: ^eval(^math:frac($floatdays*24*60)*60)
108: <hr>
109:
1.219 parser 110: PI=^math:PI.format{%.40f}
111: <hr>
1.218 parser 112: ^math:random(10)
113: <hr>
114: ^math:sqrt(16)
115: <hr>
1.216 parser 116: $люди[
117: $2федя[
118: $рост[176]
119: ]
120: $1василий[
121: $возраст[5]
122: ]
123: ]
124:
125: $имена[^люди.keys[]]
126: $имена{
127: ^sort{$key}
128: ^menu{$key}[,].
129: }
130: <hr>
131:
1.215 parser 132: $таблица[^table:set{a b
133: 1 2
134: }]
135: $колонки[^таблица.columns[]]
136: $колонки{
1.217 parser 137: ^menu{$column}[,].
1.215 parser 138: }
139:
140: <hr>
141:
1.214 parser 142: ^if($form:id ne 'z"'){
143: ne
144: }{
145: eq
146: }
147: <hr>
148:
149:
150: ^rem{
1.212 parser 151: $one(1)
152: $z(0)
1.214 parser 153: ^eval(^one.int[]%0)
1.212 parser 154: <hr>
1.214 parser 155: }
1.212 parser 156:
157: $form:id:
158: <hr>
159:
160: ^switch(2){
161: ^case(1;4;3){143}
162: ^case[DEFAULT]{default}
163: }
164: <hr>
165: ^switch(2){
166: ^case(1;2;3){143}
167: ^case[DEFAULT]{default}
168: }
169: <hr>
170: ^switch(2){
171: ^case(1;5;3){143}
172: }
173:
174: <hr>
175: ^switch(2){
176: ^case(2){2}
177: }
178:
179: <hr>
180: ^switch[2]{
181: ^case(2){![2]}
182: }
183: <hr>
184:
185:
186: $hash[$a[1]]
187: ^hash.default[0]
188: ^rem{
189: $target[targetval]
190: $form_admin[formadminval]
191: ^if(def $target){<head><base target=$target^if(def $form_admin){_a}></head>}
192: ^if(def $target){<head><base target=${target}^if(def $form_admin){_a}></head>}
193:
194: если $target и $form_admin defined получаем
195: <head><base target={_a}></head>
196: <hr>
197: }
198:
199: #$string:a(1)
200: #<hr>
201: #^if(^log(11)){y}{n}
202: #<hr>
203:
204: #@my_func[arg;z]
205: #2
206:
207: #@z[]
208: #^exp(^log(10))
209: #<hr>
210: #$a[^table:load[a<b]]
211: ^rem{
212: ^mail:send[
213: $from[paf@design.ru]
214: $to[paf@design.ru]
215: $subject[test]
216: $body[here]
217: ]
218: <hr>
219: }
220: -^eol[]-
221: <hr>
222: ^if(1<2){$a[1]}
223: ^$a=$a
224: <hr>
225:
226: <form method=post>
227: <input type=hidden name=a value=123>
228: <table border=1 width=250><tr><td>$form:name</td></tr></table>
229: <textarea name=name rows=5 cols=40>^untaint[html]{^default[$form:name;Пробный текст: А.Ф._Петросян <<Жизнь в Аду>>
230: нажми Submit]}</textarea><BR>
231: <input type=submit>
232: </form>
233: <hr>
234:
235: #^main[]
236: #^use[$form:file]
237:
238: $строка[вася ЗдЕсЬ]
239: ^^строка.upper[]=^строка.upper[]<br>
240: ^^строка.lower[]=^строка.lower[]<br>
241: <hr>
242:
1.211 parser 243:
1.212 parser 244: $a[12]
245: ^a.int[]
246:
247: <hr>
248:
249:
250: $t[^table:set{key value
251: 1 v1
252: 2 v2}]
253: $h[^t.hash[key]]
254:
255: ^sql_test[$SQL.connect-string]
256: #^sql_test[mysql://test:test@localhost/test/cp1251_koi8]
257:
258: <HR>
259: $abc{}
260: $tn[^table:set[nameless]{a1 b1
261: a2 b2
262: }]
263: $x[^tn.locate[0;a2]]
264: ^$tn.1=$tn.1
265: <hr>
266: $t0[^table:set{key a b
267: 1 a1
268: 2 a2 b2
269: }]
270: ^if(^t0.locate[key;2] && "a" ne "b"){y;n}
271: <hr>
272: $currentFolder[/a/b]
273: $path[^currentFolder.lsplit[/]]
274: ^path.flip[]
275: $path{
276: ^menu{$0}{,}
277: }
278: <hr>
279: $t1[^table:set{key value
280: 1 v1
281: 2 v2}]
282: $h1[^t1.hash[key]]
283: ^h1.default[$value[nothing]]
284: ^$h1.2.value=$h1.2.value<br>
285: ^$h1.2x.value=$h1.2x.value<br>
286: <hr>
287: $t2[^table:set{key a b
288: 1 a1
289: 2 a2 b2
290: }]
291: t2 ^if(^t2.empty[]){empty}{not empty}<br>
292: ^t2.offset(1)
293: $t2.b
294: $r[^t2.record[]]
295: <hr>
296: $th[^t2.hash[b]]
297: ^$th.b2.a=$th.b2.a<br>
298: <hr>
299: $th[^t2.hash[key;a]]
300: ^$th.2.a=$th.2.a<br>
301: <hr>
302: #^OP:eval(1<2)
303:
304: $filelist[^table:dir[.]]
305: <hr>
306: $t2[^table:set{dir title
307: /here Here
308: }]
309: $t2{^menu{${dir}-$title}[,]}
310: <HR>
311: $dir[news]
312: $list[^table:dir[$dir]]
313: ^list.menu{
314: $subdir[$dir/$list.name]
315: $sublist[^table:dir[$subdir]]
316: ${list.name}/ $sublist{^menu{$name}[,]}<br>
317: }
318: <HR>
319: ^if(in "/otherdeeper"){y;n}
320: <HR>
321:
322: ^^table:dir[/]:<BR>
323: $d[^table:dir[/]]
324: $d{^menu{$name  ^; ^; ^; ^;^if(-f $name){-f} ^if(-d $name){-d};<BR>}}
325: <HR>
326:
327: $files[^table:set{name}]
328: $d{^menu{
329: ^if(-d "$name"){
330: ^:files.append{$name}
331: }
332: }}
333:
334: $files{^menu{$name}[,]}
335: <HR>
336:
337: @exception[origin;source;comment;type;code][i;j]
338: <body bgcolor=black>
339: <font color=white>
340: ERROR:
341: ^if(def $source){$origin '$source'}
342: ${comment}.
343: ^if(def $type){type=$type}
344: ^if(def $code){code=$code}
345:
346: @auto_test[]
347: ^BASE.auto_test[]
348: <li>${request:uri}!
349: @end
350:
351:
352: @sql_test[connect-string]
353: #^rem{
354: #^for[i](1;2){
355: ^connect[$connect-string]{
356: $shit[^taint[our's]]
357: # $paf[^table:sql{insert into paf (name, age) values ('$shit', ^random:generate(10000))}]
1.229 parser 358: # ^void:sql{update paf set age=age+1}
1.212 parser 359: $paf[^table:sql{select * from paf order by id desc}(5)]
360: $paf{
361: ^if(^empty[]){query result is empty}{
362: <table border=1>
363: <tr><td>id</td><td>name</td><td>age</td></tr>
364: ^menu{<tr><td>$id</td><td>$name</td><td>$age</td></tr>}
1.211 parser 365: </table>
1.212 parser 366: }}
1.232 parser 367: ^^string:sql{select name from paf where id=1}=^string:sql{select name from paf where id=1}{n/a}<br>
368: ^^int:sql{select age from paf where id=1}=^int:sql{select age from paf where id=1}(111)<br>
369: ^^double:sql{select age from paf where id=1}=^double:sql{select age from paf where id=1}(222)<br>
1.212 parser 370:
371: $paf[^hash:sql{select id,age from paf}]
372: ^$paf.2.age=$paf.2.age<br>
373: }
374: #}
375: #}
376:
377: @eol[]
378: eol
379:
380: @default[test;def]
381: $result[^if(^test.length[]){$test}{$def}]
E-mail: