|
version 1.46, 2002/06/14 12:45:15
|
version 1.52, 2002/06/24 19:11:43
|
|
Line 414 Xhashfile
|
Line 414 Xhashfile
|
| ^code.cache[заголовки новостей](35){....} |
^code.cache[заголовки новостей](35){....} |
| |
|
| !mail |
!mail |
| |
!$mail.received=MESSAGE: |
| |
.from |
| |
.reply-to |
| |
.subject |
| |
.date класса date |
| |
.message-id |
| |
.raw[ |
| |
.СЫРОЕ_ПОЛЬЗОВАТЕЛЬСКОЕ-ПОЛЕ-ЗАГОЛОВКА |
| |
] |
| |
$.{text|html|file#}[ << нумеруется как и в mail:send (text, text2, ...) (file, file2, ...) |
| |
$.content-type[ |
| |
$.value[{text|...|x-unknown}/{plain|html|...|x-unknown}] |
| |
[$.charset[windows-1251]] << в каком пришло, сейчас уже перекодировано |
| |
$.ПОЛЬЗОВАТЕЛЬСКИЙ-ПАРАМЕТР-ЗАГОЛОВКА |
| |
] |
| |
$.description |
| |
$.content-id |
| |
$.content-md5 |
| |
$.content-location |
| |
.raw[ |
| |
.СЫРОЕ_ПОЛЬЗОВАТЕЛЬСКОЕ-ПОЛЕ-ЗАГОЛОВКА |
| |
] |
| |
$.value[строка|FILE] |
| |
] |
| |
$.message#[MESSAGE] (message, message2, ...) |
| |
|
| |
!^mail:send[ |
| |
$.charset[кодировка заголовка и текстовых блоков] |
| |
$.any-header-field |
| |
$.text[string] |
| |
$.text[ |
| |
$.any-header-field |
| |
$.value[string] |
| |
] |
| |
$.html{string} |
| |
$.html[ |
| |
$.any-header-field |
| |
$.value{string} |
| |
] |
| |
$.file#[FILE] |
| |
$.file#[ |
| |
$.any-header-field |
| |
$value[FILE] |
| |
] |
| |
] |
| |
!если charset указан, письмо перекодируется в этот charset |
| |
!content-type.charset не влияет на перекодирование |
| |
!после имени части может идти # число |
| |
^mail:send[ |
| |
# по-умолчанию, совпадает с source encoding. |
| |
# задаёт кодировку body |
| |
$.charset[windows-1251] |
| |
# нет умолчания |
| |
$.content-type[$.value[text/plain] $.charset[windows-1251]] |
| |
$.from["вася" <vasya@design.ru>] |
| |
$.to["петя" <petya@design.ru>] |
| |
$.subject[пойдём пивка] |
| |
$.body[ |
| |
слова |
| |
] |
| |
] |
| !:send[$.header-field[] $.charset[кодировка письма] $.body[когда body не строка, |
!:send[$.header-field[] $.charset[кодировка письма] $.body[когда body не строка, |
| а hash, отсылается multipart письмо]] |
а hash, отсылается multipart письмо]] |
| !если charset указан, письмо перекодируется в этот charset |
!если charset указан, письмо перекодируется в этот charset |
| !content-type.charset не влияет на перекодирование |
!content-type.charset не влияет на перекодирование |
| |
!после имени части может идти целое число, части пойдут в порядке чисел. |
| !если body указан строкой, то это текст письма, никаких вложений. |
!если body указан строкой, то это текст письма, никаких вложений. |
| !если body указан hash, то это части, будут собраны текстовые блоки, затем вложения |
!если body указан hash, то это части, будут собраны текстовые блоки, затем вложения |
| |
!это старый формат, поддерживается для обратной совместимости |
| !если имя части начинается со слова text, то это текстовый блок. |
!если имя части начинается со слова text, то это текстовый блок. |
| !если имя части начинается со слова attach, то это вложение, формат задания:: |
!если имя части начинается со слова attach, то это вложение, формат задания:: |
| !$attach[$.format[!uue|Xbase64] $.value[DATA] $.file-name[user-file-name]] |
!$attach[$.format[!uue|Xbase64] $.value[DATA] $.file-name[user-file-name]] |
| !после имени части может идти целое число, части пойдут в порядке чисел. |
|
| !важно: при multipart не указывать content-type |
!важно: при multipart не указывать content-type |
| ^mail:send[ |
^mail:send[ |
| # по-умолчанию, совпадает с source encoding. |
# по-умолчанию, совпадает с source encoding. |
|
Line 537 Xhashfile
|
Line 599 Xhashfile
|
| выполняется код |
выполняется код |
| разблокируется |
разблокируется |
| Xchmod[...] НЕТ И НЕ БУДЕТ, ЧТОБЫ НЕ МОГЛИ СДЕЛАТЬ executable и запустить, даже если ftp запрещает chmod. |
Xchmod[...] НЕТ И НЕ БУДЕТ, ЧТОБЫ НЕ МОГЛИ СДЕЛАТЬ executable и запустить, даже если ftp запрещает chmod. |
| |
!^file:dirname[/a/some.tar.gz]=/a |
| |
!^file:dirname[/a/b/]=/a |
| |
!^file:basename[/a/some.tar.gz]=some.tar.gz |
| |
!^file:justname[/a/some.tar.gz]=some.tar |
| |
!^file:justext[/a/some.tar.gz]=gz |
| |
|
| math |
math |
| !$math:PI |
!$math:PI |
|
Line 548 math
|
Line 615 math
|
| !^math:degrees radians |
!^math:degrees radians |
| !^math:pow sqrt |
!^math:pow sqrt |
| !^math:random(ширина диапазона) |
!^math:random(ширина диапазона) |
| ^math:{C2C0983C-E26E-4169-BD07-77ECE9405BA5} |
^math:GUID {C2C0983C-E26E-4169-BD07-77ECE9405BA5} |
| |
!^math:crypt[password;$apr1$salt] |
| |
|
| !date |
!date |
| !время типа time можно использовать в выражениях, подставляет |
!время типа time можно использовать в выражениях, подставляет |
|
Line 602 xdoc(xnode)
|
Line 669 xdoc(xnode)
|
| !равно текущей кодировке выходной страницы, |
!равно текущей кодировке выходной страницы, |
| $response:charset |
$response:charset |
| ::sql{...} |
::sql{...} |
| !::create{<string/>} старое имя 'set' |
!::create{<?xml?><string/>} старое имя 'set' |
| !::create[qualifiedName] |
!::create[qualifiedName] |
| !::load[file.xml] |
!::load[file.xml] |
| !.transform[rules.xsl][[params hash]] выдаёт dom |
!.transform[rules.xsl][[params hash]] выдаёт dom |
|
Line 623 xdoc(xnode)
|
Line 690 xdoc(xnode)
|
| !media-type = string /> |
!media-type = string /> |
| !параметры передаются как есть, не xpath выражения |
!параметры передаются как есть, не xpath выражения |
| |
|
| !.string[output options] |
!.string[[output options]] |
| !.save[file.xml;output options] с шапкой |
!.save[file.xml[;output options]] с шапкой |
| !.file[output options] = file |
!.file[[output options]] = file |
| output options идентичны атрибутам xsl:output |
output options идентичны атрибутам xsl:output |
| [исключение: игнорируется cdata-section-elements, нужно будет, сделаю] |
[исключение: игнорируется cdata-section-elements, нужно будет, сделаю] |
| выдаёт media-type при подстановке $response:body[сюда] |
выдаёт media-type при подстановке $response:body[сюда] |
|
Line 710 xdoc(xnode)
|
Line 777 xdoc(xnode)
|
| !^node.select[xpath/query/expression] = array of nodes, |
!^node.select[xpath/query/expression] = array of nodes, |
| empty array if nothing found |
empty array if nothing found |
| !^node.selectSingle[xpath/query/expression] = first node if any |
!^node.selectSingle[xpath/query/expression] = first node if any |
| !^node.selectBool[xpath/query/expression] = bool if any |
!^node.selectBool[xpath/query/expression] = bool if any or die |
| !^node.selectNumber[xpath/query/expression] = double if any |
!^node.selectNumber[xpath/query/expression] = double if any or die |
| !^node.selectString[xpath/query/expression] = string if any |
!^node.selectString[xpath/query/expression] = string if any or die |
| |
|
| !error codes(пока придут как текст в случае соответствующих ошибок): |
!error codes(пока придут как текст в случае соответствующих ошибок): |
| INDEX_SIZE_ERR |
INDEX_SIZE_ERR |