Cистема управления сайтом

Оператор exec

Оператор exec выполняет программу (скрипт) на стороне сервера. Скрипт должен находиться в папке plugins.

Синтаксис:

<exec name=identifier cmd=expr [args=expr]>

где,

Параметр

Описание

name

имя, присвоенное конкретному оператору

cmd

путь к программе, которую необходимо выполнить. Путь указывается от корня папки plugins в директории, куда установлен DJEM

args

аргументы программы

 

После выполнения оператора, к нему можно обратиться и получить следующие значения:

<exec[identifier]._value[.methods]> – получить вывод (stdout) выполненной программы.
К выводу можно применить методы DJEM-скрипта:
<exec[identifier]._exitcode> – код возврата программы.
<exec[identifier]._ok> – программа выполнилась успешно, т.е. _exitcode==0

 

Пример:

Запуск процедуры архивации (команда backup, находящаяся в папке system) и вывод сообщения о результате операции с указанием кода ошибки.

<exec name=archive cmd="system/backup">
<if <exec[archive]._ok>>
  архивация прошла успешно
<else>
  ошибка архивации, код завершения:
<exec[archive]._exitcode>
</if>

Пример

Запуск процедуры создания превью из больших картинок


<loop i=1 to 3>
{{ если превью еще не создана }}
<if <#"pic<loop[i]>_pr"#> == ""> 
  
{{ если есть большая картинка }}
  
<if <#"pic<loop[i]>"#>>
      
{{ запускаем скрипт и передаем ему адрес большой картинки }}
       
<exec name=x cmd='resize.php <#"pic<loop[i]>"#>'>  
      
{{ записыем в поле адрес созданной превьюшки }}
       
<#"pic<loop[i]>_pr"=<#"pic<loop[i]>"#> ~ ".thumb.jpg"#>  
  
</if>
</if>
</loop>

Файл resize.php должен находится в директории /cgi-bin/djem/plugins/. Он обрабатывет изображение с помощью графической утилиты и выдает на выходе обработанное изображение.

Поиск по документации

О компании  |  Партнёрам

© 2005 — 2024 DJEM Solutions, все права защищены. | Дизайн — Студия Fractalla