Integrace elFinder do Nette
- Willik
- Člen | 19
Zdravim,
neresil nekdo inregraci elFinder manageru do Nette? Uvital bych kazadou radu
s tim, jak spravne integrovat tu knihovnu napr. do presenteru. Potrebuju pro
TinyMCE filemanager a elFinder mi prijde jako dobre reseni.
Ma nekdo nejakou zkusenost pripadne ukazku/navod jak postupovat?
Dekuji
- Willik
- Člen | 19
Tak to vypada, ze asi elFinder nikdo nepouziva. Jaky byste filemanager (jde o nahravani obrazku) doporucili pro integraci do nette?
Nebo bych potreboval aspon poradit, jak udelat, aby v pripade, ze prijde ajaxovy dotaz na presenter, aby presenter nic nerenderoval,jen predal nejake udaje conectoru toho elFinder, protoze zpracovani a odpoved uz resi elFinder. Jde to udelat v Nette? Je nejaky navod jak v Nette pripojovat jine knihovny?
Editoval Willik (8. 11. 2016 18:50)
- Willik
- Člen | 19
Tak jsem to nakonec nejak poresil. Kdyby se s tim nekdo take setkal, tak tady je presenter pro inspiraci. V samotne elFinder se nemeni nic. Asi to neni idealni reseni, ale je funkcni
use App\Utility\RuntimeDirs;
/**
* FileManagerPresenter.
*/
class FileManagerBasePresenter extends Nette\Application\UI\Presenter {
/** @var RuntimeDirs @inject */
public $runtimeDirs;
/** @var $connector */
protected $connector;
/** @array $options */
protected $options = array(
// 'debug' => true,
'roots' => array(
array(
'driver' => 'LocalFileSystem', // driver for accessing file system (REQUIRED)
'path' => '/images/', // path to files (REQUIRED)
'URL' => '/images/', // URL to files (REQUIRED)
)
)
);
public function beforeRender() {
if ($this->isAjax() || count($_FILES)) {
$this->fileManagerAction();
exit;
}
$this->getTemplate()->setFile($this->runtimeDirs->getAppPath() . '/templates/FileManager/FileManager.latte');
}
protected function fileManagerAction() {
$this->connector = new \elFinderConnector(new \elFinder($this->options));
$this->connector->run();
}
}