Как добавить свои команды

Added by appetito a over 1 year ago

если можно, расскажите как добавлять свои команды для файлменеджера


Replies (6)

RE: Как добавит свои команды - Added by Dmitry Levashov over 1 year ago

Хороший вопрос :)
Для текущей версии - посмотреть в src/js/elFinder.ui.js
там есть базовый класс для команд и остальные реализации
НО не советую этого делать - впустую потратите время;
Дело в том, что прямо сейчас идет разработка новой версии - там слишком много изменений в связи с появлением API
и старые команды не будут работать.
Интерфейс команд будет определен в ближайщее время.
Можете форкнуть наш проект на гитхабе (ветка experimental) https://github.com/Studio-42/elFinder/tree/experimental и как только появиться интерфейс команд - начать писать свои.
Более того у вас будет возможность предложить их для включения в основной код, если пожелаете

RE: Как добавить свои команды - Added by appetito a over 1 year ago

ОК, подожду чуток:)

RE: Как добавит свои команды - Added by Alexey Sukhotin about 1 year ago

Dmitry Levashov wrote:

Хороший вопрос :) Для текущей версии - посмотреть в src/js/elFinder.ui.js там есть базовый класс для команд и остальные реализации НО не советую этого делать - впустую потратите время; Дело в том, что прямо сейчас идет разработка новой версии - там слишком много изменений в связи с появлением API и старые команды не будут работать. Интерфейс команд будет определен в ближайщее время. Можете форкнуть наш проект на гитхабе (ветка experimental) https://github.com/Studio-42/elFinder/tree/experimental и как только появиться интерфейс команд - начать писать свои. Более того у вас будет возможность предложить их для включения в основной код, если пожелаете

/**
* Add handler to elFinder command
*
* @param string command name
* @param string|array callback name or array(object, method)
* @return elFinder
* @author Dmitry (dio) Levashov
**/
public function bind($cmd, $handler) {

Т.е. с помощью этого метода можно будет назначить свой дополнительный обработчик на любую команду? Например, убрать ссылку на файл из БД при удалении.

RE: Как добавить свои команды - Added by Dmitry Levashov about 1 year ago

Так точно - обработчик вызывается по выполнению команды и получает ее аргументы и результат и может даже изменить результат, который уйдет клиенту 0_о
Вот только если вы храните файлы - то может напишите драйвер для этого случая?
Дело в том что новый файндер сможет работать с любым структурированным хранилищем данных

RE: Как добавить свои команды - Added by Alexey Sukhotin about 1 year ago

Идея интересна :) Есть сейчас более-менее рабочая сборка для экспериментов? Или пока лучше подождать стабилизации? В том что лежит в git есть проблемы.

При попытке сборки (make elfinder) выдает такое:

cat: ./js/elFinder.view.js: No such file or directory
cat: ./js/elFinder.quickLook.js: No such file or directory
cat: ./js/elFinder.eventsManager.js: No such file or directory
make: *** [elfinder.full.js] Error 1

И в логе такое при попытке теста php коннектора напрямую (команда tree):

PHP Fatal error:  Call to undefined method elFinder::fileRoot() in /home
/www/vhosts/custom/d6/sites/all/libraries/elfinder/connectors/php/elFinder.class.php on line 368

RE: Как добавить свои команды - Added by Dmitry Levashov about 1 year ago

Экспериментальная ветка еще совсем не готова для сборки - подождите, или запускайте из /src чтобы посмотреть как оно работает, если я опять не поломаю :)

(1-6/6)