CKEditor, TinyMCE Ajex File Manager 1.0.3 (PHP)
Файловый браузер для CKEditor и TinyMCE, и просто для сайта. 
Сборка имеет два скина: dark & light
Скриншоты кликабельны
Что уммет:
- Загружать файлы
- Показывать размер занимаемых файлами папок
- Показывать максимальный объем загружаемых файлов
- Загружать только файлы выбранного для просмотра типов
- Информер состояния загрузки
- Информер при выборе файла не того типа, не ставить в очередь
- Сжатие изображений при загрузке
- Сортировать отображение по параметра Имя, Дата, Размер
- Групповое удаление файлов
- Скачивание напрямую просматриваемых файлов
<head>
<script type="text/javascript" src="/AjexFileManager/ajex.js"></script>
</head>
<body>
<script type="text/javascript">
AjexFileManager.init({
// Обязательный параметр
returnTo: '', // [ckeditor, tinymce, function] default=ckeditor
// Опционально
path: '/path/to/AjexFileManager/', // Определяется автоматически, но если вдруг не удается то можно прописать
editor: '', // Объект CKEDitor'a, нужен только для него
width: '', // Ширина popup, default=1000
height: '', // Высота popup, default=660
skin: '', // [dark, light], default=dark
lang: '', // Язык, сейчас есть [ru, en], default=ru
connector: '', // default=php,
contextmenu: true // [true, false], default=true
});
</script>
Тестировано: ff3 3.5, ff2 2.0, opera 10.0, chrome 4.0, ie 8.0; 7(compatibility); 6(открыл, увидел, плюнул, закрыл)
В планах предварительно:
- сделать прозрачную поддержку для Joomla, Drupal но это не скоро, так как не копал ни один из них.
- онлайн редактор изображений вот думаю забабахать, ну там кроп, ресайз, надписи
Из основных настроек "AjexFileManager/ajax/php/ajax.php"
$cfg['url'] = 'upload'; // Папка для загрузок по типам, на манер как раньше было $cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfg['url'] . DIR_SEP; // http://www.yousite.com/upload/ абсолютный путь до папки $cfg['quickdir'] = ''; // Папка для быстрой загрузки, это закладка Закачать - не открывая файл менеджер, пример: $cfg['quickdir'] = 'quick-folder'; само собой будет по типам, если грузите изображение то оно попадет в /upload/image/quick-folder/filename.jpg $cfg['thumb']['width'] = 150; // ширина создаваемых превьюшек $cfg['thumb']['height'] = 120; // высота $cfg['thumb']['quality']= 80; // качество сжатия $cfg['thumb']['cut'] = true; // дабы превьюшки не вызывали смех они будут резаться, а не пропорционально уменьшаться $cfg['thumb']['auto'] = true; // если изображения были закачены через ftp то автоматически превью не создастся, поэтому при включенной данной опции будет проверка на существование превьюшки $cfg['thumb']['dir'] = '_thumb'; // скрытая папка которая будет создаваться там где лежат изображения, думал делать одну для всех, но решил пока так сделать $cfg['thumb']['date'] = "j.m.Y, H:i"; // дата в отображении с именами файлов
Специальная благодарность людям чьи разработки использовал при создании:
- jQuery (jquery.com)
- jQuery UI (jqueryui.com)
- jquery.dynatree - Martin Wendt (wwWendt.de)
- jquery.contextmenu - Matt Kruse (JavascriptToolbox.com)
- jquery.cookie - Klaus Hartl (stilbuero.de)
- jquery.multifile - Fyneworks.com (fyneworks.com)
- jquery.form - Form Plugin (malsup.com)
- Jordan Michael - "120 иконок для файлов по расширениям" (jordan-michael.com)
- Mark James - "Использовал иконки в меню" (famfamfam.com)
Скачать:
Только исходники
Ajex File Manager вместе с CKEditor 3.3.1
Demo CKEditor Demo с двумя редакторами
Demo TinyMCE
Demo Function
Для проверки и создания основных папок вы можете вызвать php файл с параметром ?isWork
Пример
Hi Alex,
do you have any idea how to use your nice filebrowser in Drupal6?
CKeditor is working well (using a modified wysywig api for it) and also Ajex FM is actually working ("Upload" tab and "Browse Server" button are available).
The only problem is the path. So far I get always a 404, doesn't matter what I try.
Drupal is running as a multiuser CMS, means I run several domains under one Drupal installation. Therefore every domain has it own directory e. g. /sites/domain1.com/files and /sites/domain2.com/files and so on. Drupal is managing the access of the different domains.
I know a bit about PHP but JavaScript ... yes I heart about :-)
Do you think it's possible to figure something out? You will become a hero in the Drupal community ;-)
Best wishes from Hamburg and thanks a lot
Jens
Hello Jens,
I had no chance with Drupal more work, dig a little, that's what happens :)
1) Copy file ajex.js to "modules/wysiwyg/editors/js"
2) Copy folder AjexFileManager to "sites/all/libraries/ckeditor"
3) Add in "modules/wysiwyg/editors/ckeditor.php" -> 'ajex.js'
.... 'js files' => array('ckeditor-3.0.js', 'ajex.js'),
4) Edit "modules/wysiwyg/editors/js/ckeditor-3.0.js"
Drupal.wysiwyg.editor.attach.ckeditor = function(context, params, settings) {
CKEDITOR.config.customConfig = '';
CKEDITOR.replace(params.field, settings);
AjexFileManager.init({
path: '/sites/all/libraries/ckeditor',
returnTo: 'ckeditor',
editor: CKEDITOR
});
};
....
5) Create a folder upload in the site root
---
If the folder "upload" must lie in a different place then Experiment with ways in
"sites/all/libraries/ckeditor/AjexFileManager/ajax/php/ajax.php"
Variables:
$cfg['url'] = 'upload';
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfg['url'] . DIR_SEP;
But as for each user its own folder to make do not know, is not stored in the session login, otherwise we could do
session_start();
$cfg['url'] = 'upload/' . $_SESSION[ user-login ];
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfg['url'] . DIR_SEP;
But there's a clever way a while so don`t know :)
* Ajex.FileManager is free software: you can redistribute it and/or modify
very difficult modify if your scripts is packed.
so, can i unpack, modifyed and use those script in my project?
in best case you may under GPL license put uncompressed suorce for distribute..
>Jhon
Added to post a link to the full version - AjexFileManager full with lib ;-)
Было бы неплохо, если бы софтина после загрузки фотографии обновлялась текущая директория.
Сейчс сразу после загрузки файлов не видно результата и для того, чтобы его увидеть приходится кликнуть по другой директории, а потом снова по желаемой.
Обычный пользователь такое не осилит.
Я сгенерировал какой-то безумный текст, в прошлом комменте.
В общем мысль ясна - после загрузки картинок не видно результата.
Hey, I like this file manager! Thanks a lot. However the upload controls are in Russian, not English. Do you have any tips on changing the text to English?
>andruhon
Да, вы правы, сделаемс :)
>Jonathan Puddle
Specify language in the .init
AjexFileManager.init({
...,
lang: 'en'
});
hi,
which version of ckeditor did you use? When click Image button appears annoing scrolls in ie, which disapeared in new version of ckeditor. could you integrate your manager with new editor version?
>Viktor
Hello, Utilized the latest stable version CKEditor 3.0 (revision 4148)
For IE 6 layout is not optimized, in other versions should be OK
hi,
I have problem with integrating Ajex File Browser into CKEditor 3.0
In CKEditor I had add
$ckeditorDef = "CKEDITOR.replace( 'icontent',
{
...
filebrowserBrowseUrl : 'path/to/AjexFileManager/',
...
});";
At the begining of page I add code which is on the top.
When I click browse, Ajex File Manager window is opened, but I dont see icons and all configuration settings from Optional settings aren't used.
Could you please help me.
It will be great if you writte a tutorial how to integrate your browser into CKEditor.
PS: Browser is cool!!!
Hi.
You are wrong to initialize the script, it must be done not in CKEDITOR, see how it is done in Demo CKEditor.
var ckeditor = CKEDITOR.replace('editor1');
AjexFileManager.init ((
returnTo: 'ckeditor',
editor: ckeditor
));
In facility ckeditor change nothing.
Thanks!
здравствуйте. Подключил Ajex File Manager к своему проекту:
Хелпер:
Copy Source | Copy HTML<?php
if(!defined('BASEPATH')) exit('No direct script access allowed');
function form_ckeditor($data)
{
return '<script type="text/javascript" src="'.base_url().'application/plugins/ckeditor/ckeditor.js"></script>' .
'<script type="text/javascript" src="'.base_url().'application/plugins/ckeditor/ajexFileManager/ajex.js"></script>' .
'<script type="text/javascript">var editor = CKEDITOR.replace("'.$data['id'].'");</script>' .
'<script type="text/javascript">ajexFileManager(editor, "/site/application/plugins/ckeditor/", {/*lang: "ru",*/ connector: "php"/*, width: 1000, height: 750*/});</script>';
}
Отображение:
Copy Source | Copy HTMLecho "<p><label for='long'>Content</label><br/>";
$data = array('name'=>'body','id'=>'long', 'value' =>$post['body']);
echo form_textarea($data) ."</p>";
echo form_ckeditor(array('id'=>'long'));
Все прекрасно работает, вот только когда открываешь менеджер управления файлами появляется папка "uploads" и больше некакой реакции :( В чем может быть дело?
Возможно ли получить не обфусцированный JS код?
>Guerra
Возможно рутовая папка не доступна на запись, или неправильно определеятся, попробуйте вызвать php файл с параметром ?isWork для проверки.
И судя по подключению, вы используете прошлую версию, так как в новой регистр в имени изменён, сейчас не ajexFileManager а AjexFileManager, скачайте последнюю версию.
>andruhon
Да, конечно.
Добавил к списку ссылок на скачивание: AjexFileManager full with lib
Спасибо.
Если допилю что-нибудь полезное - скину вам.
что б после загрузки файла обновилось содержимое папки в фулл версии в файле ajex.filemanager.js после 136 строчки
success : function showResponse(response, status) {
добавляем строчку
viewsUpdate($cfg.dir);
вот так вот всё просто.
в принципе то же надо сделать и при открытии окна менеджера. но я пока не разбирался где это происходит.
надеюсь в ближайшие дни обновится сжатая версия с этими изменениями :)
Хм, к размышлению... :)
>dogzilla
Список хотелок и исправлений есть :)
В эти или следующие выходные буду реализовывать, а покамесь весь в работе :)
>Руслан
Что именно? :)
Отличная статья, по-моему что вам нужно в какие нибудь журналы специальные писать :)
>BoлкBepнyлcя
Шутить изволите :)
Hi Alex,
I have some problems with the path with using the ckeditor. I want have the files of the filemanager and the upload folder in the same folder called "ckeditor".
I changed the path in ajax.php:
$cfg['url'] = 'upload';
$cfgds ="ckeditor";
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfgds . DIR_SEP . $cfg['url'];
Now I can see the uploadfolder and I can upload images. In the right frame I can see the file - the description, but not the image.
If I click on "LOOK" the image I get the new window with a wrong path - without "ckeditor/" in front.
The third thing is - if I doubleclick to select a picture I get a URL "/upload/image/xxx.jpg" but I must get the url without "/" in front - (upload/image/xxx.jpg).
What is wrong with my path?
Thanks and greetings
Dirk
Hi,
it is possible to put this codes together?
CKEDITOR.replace( 'editor1',
{
toolbar :
[
['Source','-','Save','NewPage','Preview','-','Templates'],
['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
'/',
['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
['Link','Unlink','Anchor'],
['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
'/',
['Styles','Format','Font','FontSize'],
['TextColor','BGColor'],
['Maximize', 'ShowBlocks','-','About']
]
});
with
var ckeditor = CKEDITOR.replace('editor1');
AjexFileManager.init ((
returnTo: 'ckeditor',
editor: ckeditor
));
Hello Dirk
To obtain the correct path should be in place
$cfg['url'] = 'upload';
$cfgds ="ckeditor";
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfgds . DIR_SEP . $cfg['url'];
Contact:
$cfg['url'] = 'ckeditor/upload';
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfg['url'];
To remove the slash in front of the path, change in ajax.php on line 132
$reply['config'] = array(
...
'url' => '/'. $cfg['url']. '/',
On
'url' => $cfg['url']. '/',
Hi Delf
Yes, of course, should get the following code:
var editor = CKEDITOR.replace( 'editor1',
{
toolbar :
...
});
AjexFileManager.init({editor: editor});
Privet,
u menia vopros. Kak sdelat, chtoby kogda vybiraesh svoistva kartinki, vyvodilas' vysota i shirina kartinki? Zaranee spasibo.
Hi!
Your filemenager is cool, but have on problem IE6.
Maybe you try to make it compatibile with IE6 it is still important.
Приветы афтару! И респект туда же :)
Подключаю ваш скрипт к ckeditor следующим образом:
var ckeditor = CKEDITOR.replace('body');
AjexFileManager.init({
returnTo: 'ckeditor',
editor: ckeditor,
skin: 'dark'
});
Здесь, похоже, ошибок нет, так как окно файл-менеджера открывается. Но в нём ни папок ни файлов нет. Настройки в ajax.php сейчас стоят все дефолтовые. Папка upload давно существует (юзаем и fckeditor тоже). В чём может быть проблема? Заранее сенксы
Чё-т, защита у вас, видать от скриптов :)
Вот [] вместо треугольных скобок
[script type="text/javascript" src="ckeditor/ckeditor.js"][/script]
[script type="text/javascript" src="AjexFileManager/ajex.js"][/script]
[script type="text/javascript"]
var ckeditor = CKEDITOR.replace('body');
AjexFileManager.init({
returnTo: 'ckeditor',
editor: ckeditor,
skin: 'dark'
});
[/script]
>DeeJay
А что выдает "?isWork" ?
>Viktor
Что то я вас не совсем понял, это где именно?
http://my_site/AjexFileManager/ajax/php/ajax.php?isWork
Вобще ничего не выдаёт. В HTML-коде результата - пусто :)
Упс, не то.
http://my_site/AjexFileManager/ajax/php/lib.php?isWork
Directory not found:
Failed created, You need to create the folder manually, or set the right
Вам необходимо создать папку вручную, или выставить права
---
Папка upload есть в корне сайта. Работаю под виндами - с правами порядок :)
Насколько я понимаю (проанализировав код), после
Directory not found: должно выводиться значение $cfg['root'].
В ajax.php оно равно 'upload', но в ?isWork пусто :)
>DeeJay
Пусто потому-что необходимо ajax.php?isWork вызывать, а не lib.php.
Если ничего не выдает, у вас php рабочий вобще? :)
Какая версия?
PHP-то работает (v. 5.2.4)
А что файл-менеджер может запуститься без PHP? Выше-то написано же, что он запускается. Но списка папок нет :)
Кто подскажет как его прикручивать, где и что надо прописать, а то никак не получаеться
>DeeJay
Да, php через ajax работает только ;-)
Внешний вид/вёрстка просто загружается.
В общем надо вам как-то заставить isWork заработать, чтобы проверить.
>Lyudistek
Подключаете в head, вызываете через .init() =)
Однако, косячёк :)
isWork начинает работать только в том случае, если закомментировать 48-уй строку в ajax.php
---
mb_internal_encoding('utf-8');
---
Вижу ещё ряд косячков (о них, "коллеги" уже сообщили выше), но главное, что эта штука всё-таки "вертится" :)
Баг: При нажатии по кнопульке "посмотреть" открывается окошко/вкладка с адресом картинки, в котором присутствует "AjexFileManager". Видимо, дело в относительном адресе, и скорее всего поможет добавление "/" в соответствующей функции :)
Кстати, скрипт сильно привязан к указанному набору допустимых папок. Если из списка "file, flash, image, media" убрать, например, "file", то папки становятся как бы пустыми :)
Мелочь (так как поправимо), а не приятно :)
>DeeJay
Вы где такой хостинг нашли, без mbstring :)
По поводу 'Посмотреть', что-то не увидел наличие AjexFileManager, у меня в demo его нету к примеру, где он светится?
Странно, вроде привязки жесткой не должно быть, в начальных версиях была она, но в 1.0 я уже сделал что ключевая папка только 'upload' остальное из неё уже берется, в конфиге просто проверки на три папки [file, flash, image] ведутся дополнительно.
Про хостинг: это Денвер :)
Про "Посмотреть": сам-то адрес нигде не светится, кроме как в адресной строке браузера. Просто, когда пытаюсь "посмотреть" картинку, вижу 404.
Про папки: это не такая большая проблема. Просто раньше юзал FCKeditor и у него настроил папки "archive, doc, flash, image, media". Хотел тут также, но не прокатило :)
Хотелка 1: Неплохо было бы, если бы расширения файлов были нечувствительны к регистру
Хотелка 2: Неплохо бы сохранять настройки в отдельном файле - так можно избежать ряда проблем при установке новой версии, которая надеюсь, скоро выйдет :)
Можно ли сделать так, чтоб быстрая загрузка файлов (вкладка "Закачать" в CKEditor'е) работала при наличии нескольких CKEditor'ов на странице? Сейчас оно работает только в первом эдиторе.
Не могу инициализировать несколько вызовов копий AjexFileManager
Можно ли на одной странице сделать инициализацию для TinyMCE и нескольких input'ов ?
Не могу инициализировать несколько вызовов копий AjexFileManager
Можно ли на одной странице сделать инициализацию для TinyMCE и нескольких input'ов ?
Hi, I can upload files from the Upload-Tab but not from the Filebrowser itself. When I chhoe files vie the "select files < x" Button, the names appear in a list below but I can?t submit them to the server. What?s wrong? The second Problem is that when I Upload via the upload-tab the file goes to the server but no url is pasted into the pic url field. I have to choose the File in the Filebrowser once again. Can you help me?
Да, и еще. На большинстве хостингов стоит лимит памяти для php в 8мб, поэтому при создании превьюшки из файла размером больше 2мб превьюшка не создается, т к операции с изображениями требуют много памяти, при этом исходный файл копируется. А при отсутствии какой-либо превьюшки данный менеджер не отображает файлов вообще.
Один из вариантов лечения - добавить в начало ajax.php
строчку ini_set('memory_limit', '100M');
В подключаю:
В прописываю:
var ckeditor = CKEDITOR.replace('editor1');
AjexFileManager.init({
returnTo: 'ckeditor',
editor: ckeditor
});
Что не так? При щелчке в редакторе на кнопке загрузки изображения, кнопочки вызова файл-менеджера нет. Помогите решить проблему у кого это удалось. Спасибо.
Хоть кто-то может написать более подробно как его прикрутить, а то никак неполучаеться
могу объяснить как к tinymce прикрутить )
только что скачал с этой страницы файл-менеджер вместе с CKEDITOR. С первого раза все пошло
у Вас нет кнопки "посмотреть на сервере" при нажатии на кнопку "изображение"?
Gigi, Днепр
Спасибо большое что откликнулись.
Да, у меня нет кнопки "посмотреть на сервере"
Вот меня интересует как к tinymce прикрутить
если скачали архив без тинимце
1) распаковали архив,
2) запустили http://your_server/AjexFileManager/ajax/php/ajax.php?isWork
3) в head'e документа
tinyMCE.init({
mode : "exact",
elements : "tinymce_editor",
theme : "advanced",
relative_urls : true,
file_browser_callback : "AjexFileManager.open",
});
AjexFileManager.init({
path: '/admin/AjexFileManager',
returnTo: 'tinymce',
skin: 'light'
});
теперь при нажатии на иконку изображения в тини рядом с полем имени картинки появится кнопка менеджера
если скачали архив вместе с менеджера с тини
запускайте:
http://your_server/AjexFileManager/ajax/php/ajax.php?isWork
затем посмотрите
http://your_server/AjexFileManager/tinymce-file-manager.html
и посмотрите на исходный код
Hello,
I just moved website from local to live web, but there is some kind of malfunction in the code after this. There should not be the "htdocs" in the path - it was on local, but on live site its srv2/home/fidle/...... I just changed upload folder in ajax.cfg (cfg [url]) to "files"
Earlier I managed to get the upload working by changing root folder in ajax.cfg (file was moved to server), but the link to the file was wrong.
Warning: is_dir() [function.is-dir]: open_basedir restriction in effect. File(/htdocs/srv2/home/fidle/files/) is not within the allowed path(s): (/srv2/home:/home/www/uvadi.cz:/usr/local/lib/php:/usr/share/phpmyadmin:/etc/phpmyadmin) in /srv2/home/fidle/plugins/editors/AjexFileManager/ajax/php/lib.php on line 26
Thank you for your help and your work!
Gigi, Днепр
Спасибо за подробное описание, но что-то не получается. Давайте выложу простенький набросок страници с тини, а вы посмотрите если не тяжело у себя. Файли в архиве 7zip. Адрес: http://files.mail.ru/W4DTT7
Lyudistek,
пробуйте http://files.mail.ru/F4CNWL )
а вот автор, похоже нас совсем бросил...
Автор тоже человек, и сейчас этот человек простите сопливит и кашляет :) поэтому пардон, делать ничего особо не хочеться :)
Но очень скоро он вернётся в строй ;-)
>Torch
>"чтоб быстрая загрузка файлов работала при наличии нескольких CKEditor'ов"
Попробовал посмотреть, к сожалению ошибка происходит в коде самого CKEditor'a, с чем это связано пока не знаю.
>Gigi
Блин, сидел пыхтел, искал способ переинициализировать возврат :)
А потом осенило, не буду вдаваться в подробности, всё просто, надо сначала инициализировать сам объект AjexFileManager для инпутов, потом отдать его на растерзание tinymce.
http://demphest.ru/demo/AjexFileManager/tinymce-and-some-input.html
По поводу памяти учту, хотя как правило этот параметр не дают изменять.
>Martin
Hi
- Try to file with the variable isWork for testing
For sending files to the server, you must right-click on the folder and select the download, or click on the green arrow at the top.
Or, you can not send out an error which then?
-URL can not be inserted because it probably is an error on the server, first try isWork
Example:
http://demphest.ru/demo/AjexFileManager/AjexFileManager/ajax/php/ajax.php?isWork
>Lyudistek
Ну как, получилось кнопку достать?
>Carmic
Hello
Unfortunately the security settings do not allow the full absolute path to use, badly of course.
Try to start this way completely to register in the variable $cfg['root']
If I understand correctly would get:
$cfg['root'] = '/srv2/home/fidle/'. $cfg['url'];
If not work, try a relative path :
$cfg['root'] = '../../../../../' . $cfg['url'];
Like 5 levels up getting :) but it is a distortion :)
Set admin a beer :) to remove the restriction ;-)
Не совсем логически понимаю как оно заработало, но работает (я про несколько инпутов) :)
Автор, не болей ) Искренне желаем выздороветь. Ты нам очень нужен :)
Hi!
For me this works fine!
I make a translation for it:
Portugues (Brasil) - Portuguese Brazil
/** pt_BR.js **/
$lang = {
'location': 'Local',
'allowRegSymbol': 'Permitido usar alfabeto latino, numeros e simbolos:<br />- _ = # ~ $ % & ( ) [ ]',
'send': 'Enviar',
'cancel': 'Cancelar',
'or': 'ou',
'successUpload': 'Carregamento realizado com sucesso',
'chooseDownloads': 'Primeiro, escolha o arquivo',
'deleteChecked': 'Deselecionar',
'folderExist': 'Esta pasta ja existe',
'enterNameCreateFolder': 'Entre com o nome da pasta',
'enterNewNameFile': 'Entre com o nome do arquivo',
'enterNewNameFolder': 'Entre com o nome da nova pasta',
'successDeleteFolder': 'A pasta e todos os conteudos nele sao removidos',
'failedDeleteFolder' : 'Nao e possivel excluir uma pasta ou nao',
'size': 'Tamanho',
'fileOf': ' arquivos',
'chooseFileUpload': 'Carregar',
'deniedExt': 'Arquivos deste tipo sao proibidos: $ext',
'selected': 'Selecionado: $file',
'removeFile': '<img src="skin/_ico/cross.png" alt="X" />',
'duplicate': 'Este arquivo ja existe na lista:\n $file',
'width': 'Largura',
'height': 'Altura',
'resizeGraph': 'Redimensionar',
'view': 'Ver: ',
'list': 'Lista',
'images': 'Imagens',
'display': 'Display: ',
'fileName': 'Nome',
'fileDate': 'Data',
'fileSize': 'Tamanho',
'sort': 'Ordem: ',
'sortName': 'Nome',
'sortDate': 'Date',
'sortSize': 'Tamanho',
'select': 'Selecionar',
'selectThumb': 'Selecionar miniatura',
'lookAt': 'Visualizar',
'downloadFile': 'Baixar arquivo',
'renameFile': 'Renomear arquivo',
'deleteFile' : 'Apagar arquivo',
'deleteCheckedFile': 'Apagar arquivos selecionados',
"update":"Atualizar",
"createFolder":"Criar subpasta",
"renameFolder":"Renomear pasta",
"deleteFolder":"Apagar pasta",
"uploadSelectFiles":"Carregar arquivos selecionados",
"resultUpload":"Resultados do carregamento"
}
Oi Henrique Moody
Obrigado pela traducao ;-)
Hi Demphest, I changed the root cfg as you said, only change is this if absolute path is set:
Warning: mkdir() [function.mkdir]: Permission denied in /srv2/home/fidle/plugins/editors/AjexFileManager/ajax/php/lib.php on line 368
Warning: mkdir() [function.mkdir]: No such file or directory in /srv2/home/fidle/plugins/editors/AjexFileManager/ajax/php/ajax.php on line 283
Warning: move_uploaded_file(/srv2/home/fidle/srv2/home/fidle/files/file//01.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /srv2/home/fidle/plugins/editors/AjexFileManager/ajax/php/ajax.php on line 288
The relative path didnt work at all - only safe mode ON warning from the server. I appreciate your help!
Афтар. Пора вместо гостевой тут форум сделать :)
>Carmic
Create a folder [file, flash, image] in your "upload" folder, and assign them the right 0777
Should work.
>DeeJay
Ага, форум с 2-3 темами :)
Листинг вот думаю сделать надо просто.
Gigi, Днепр
Спасибо большое, разобрался и прикрутил к тини.
не за что...)
Автор, пора уже версию 1.1 запускать )
Про форум: я думаю этот проект будет развиваться. Форум всё равно со временем будет удобнее гостевой :)
Здравствуйте спасибо за интересный скрипт.
Есть вопрос: у меня стоит сервер на рабочем компьютере и установлены виртуальные сервера, через vhosts так вот переменая $_SERVER['DOCUMENT_ROOT'] определяет не путь к сайту а путь к htdocs в папке с апачем. я решил проблему просто заменой в \AjexFileManager\ajax\php\ajax.php переменой $_SERVER['DOCUMENT_ROOT'] на путь к сайту
Добрый день.
В ajax.php я случайно заметил странную строку (253):
if (!is_dir(is_dir($toDir = $cfg['root'] . $dir . DIR_SEP . $cfg['quickdir'])))
Подозреваю, что такое условие будет выполняться всегда.
>fominsa
Привет. В таком случае вручную пропишите для сайта $cfg['root'] путь до папки где лежит "upload", точнее папка $cfg['url']
>Егор
Привет, да, видать перемкнуло меня :) спасибо
Выполняется оно только при загрузке через закладку Загрузить в CKEditor
добрый день, огромное спасибо за вашу работу!!
только вот такой вопрос: можно ли как-то попроще сделать так, что на сайте выводилась превьюшка а при нажатии она открывалась в расширенном варианте. В иделале было бы скрестить всё с лайтбоксом!
если не сложно, то ответьте пожалуйста на мыло
Привет. установил Файл менеджер и сразу сталкнулся с такой проблемой: Если расширение файла написано в верхнем регистре (большими буквами) то в окне браузера оно не отображается.
Если кому понадобится вот решение: нужно просто проверяемое расширение привести к нижнему регистру с помощью ф-и strtolower.
В файле lib.php ищем $cfg['allow'] (38, 104 и 107 строки) и первый параметр ф-и in_array передаем в strtolower()
Пример:
in_array(strtolower($ext), $cfg['allow']['image'])
Теже изменения я сделал и в ajax.php ... но вроде и без них работало...
А всё таки к нескольким полям можно применить?
>Никита
Эм, к каким именно полям то? :)
Если к ckeditor, то нет, ибо ошибка.
Для простых инпутов на пару с редактором выше ссылка была
http://demphest.ru/demo/AjexFileManager/tinymce-and-some-input.html
ckeditor, тоесть пока нет такой возможности? а будет?
Ещё такую штуку хотелось бы:
загружаем файл(не картинку) и в редакторе выводится на него прямая ссылка!! Ваще было б нереально круто
>Никита
В ckeditor при использовании нескольких редакторов ошибка возникает, с чем связана пока не разбирался, времени покамесь нету.
По ссылке на файл, так а в чём проблема?
Нажимаете вставить ссылку, жмёте Посмотреть на сервере, загружаете и выбираете файл, путь вставляется в поле :)
Не то? :)
Demphest
Прикручиваю к ckeditor:
<script type="text/javascript" src="../../ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="../../AjexFileManager/ajex.js"></script>
<script type="text/javascript">
var ckeditor = CKEDITOR.replace('editor1');
AjexFileManager.init({
path: '../../AjexFileManager',
returnTo: 'ckeditor',
editor: ckeditor
});
</script>
но кнопочка загрузки так и не появляеться. Подскажите где копать?
>lyudisrek
Кнопки загрузки нету, надо либо правой кнопкой на папке нажать, либо вверху на иконку стрелки вверх
Demphest
у меня подключился ckeditor, нажимаю на иконку для вставки изображения, открываеться окошко с свойством изображения, и уже в этом окошке нет кнопки "Посмотреть на сервере". Как ее достать?
>lyudisrek
1) Проверьте подключается ли ajex.js, скорее всего у вас файл не загружается.
2) Уберите в ".init" передачу переменной "path:.." по умолчанию она больше не нужна.
Demphest
а можно вам выложить файлы, а вы уже посмотрите, а то все уже перепробовал и ничего. В tinymce подключился, а вот в ckeditor никак не могу. Спасибо за пониммание.
Demphest
вот ссылка. Там сайт учебный сайт: http://files.mail.ru/V55LA0
Demphest
пользователь:
admin
пароль:
5555555
Только щас заметил эту проблему. Файлы не закачиваются. Всё остальное нормально работает. В чём может быть проблема?
Вряд ли в правах доступа, так как тестю на XP.
Demphest
Вы посмотрели архив с моим сайтом?
>lyudistek
Сейчас посмотрел, вы там целый сайт выложили :) вы мне предлагаете перенести базы запустить сайт и смотреть где и почему у него не работает да?.. :)
В head видел что returnto не убрали, я же предлагал убрать и потестить.
>DeeJay
Телепаты в отпуске ;)
Познавательно написано! Надобыотметить на БобрДобр. :)
Demphest
returnto убрал , но кнопочка все же не появилась.
lyudistek
Попробуйте firefox+firebug, какая-то ошибка должна появиться, или Error Console может быть поможет
Эспешели фор телепатс :)
1. Файлы для закачки добавляются в список.
2. Жму "закачать"
3. Полоска типа, бегает и бегает до бесконечности
4. Но нужные файлы не закачиваются.
Всё остальное работает нормально
Большое спасибо! Буду теперь заходить на этот блог каждый день! :)
Здравствуйте! У меня проблема с использованием файл менеджера вне WYSIWYG редакторов (как в примере http://demphest.ru/demo/AjexFileManager/function-file-manager.html) При нажатии на кнопке, открывается адрес тип: http://site/undefined&returnTo=$id.
>DeeJay
Аа, ну теперь всё понятно в чём дело :)
Файрбагом результат аякса проверьте, ошибка скорее всго какая-то выходит в ответе php, раз ответ в json перегнаться не может.
>БaKиHeЦ
Пожалуйста ;-) Не, не надо, иначе придётся писать что нибудь в блог :)
>Hit Shappens
Посмотрите пример, видимо вы забыли вызвать:
AjexFileManager.init({
returnTo: 'function'
});
у меня проблема... все настроил, но работает не до конца! Почему то файл-менеджер не может увидеть указанную директорию
По запросу http://site/admin/AjexFileManager/ajax/php/ajax.php?isWork
Directory not found: http://site/uploads/
Failed created, You need to create the folder manually, or set the right
Вам необходимо создать папку вручную, или выставить права. И так абсолютно со всеми папками - не видит ни одну!
P.S. пробую на денвере, в сети пока нет возмжности...
>f09
- Попробуйте создать корневую папку "uploads" вручную, там где она должна быть.
- Проверьте переменные $cfg['root'], $cfg['url'] может вы там спецсимволы какие-то поставили в пути, поэтому папки не создаются.
Пробовал уже по всякому... создана и папка uploads и еще куча папок в ней, пробовал править $cfg['root'], $cfg['url'] - никак не получается...
>Файрбагом результат аякса проверьте
Слова знакомые вижу. И, вроде, главную мысль уловил, но если можно по пунктикам (сказал он, выкрикивая из чего-то вроде танка) =)
>DeeJay
1) Ставим firebug аддон для FireFox
2) Открываем окно файл менеджера
- жмём F12
- консоль просит обновить страницу, жмём F5
3) Пробуем загрузить файл
- в консоли отображается результат выполнения ajax запроса
4) Нажимаме крестик чтобы развернуть ответ ajax'a
- смотрим наличие постороннего текста ;-)
>soft, Николаев
Спасибо за совет с переводом расширений в нижний регистр. Помогло. Без изменений в ajax.php всё-таки не работало... (на XP)
Решение хорошее, но в любом случае расширения приходится прописывать как минимум дважды. А надо бы и больше. Юзеры-то разные бывают. Могут jpg или JPG написать, а могут Jpg и так далее
использовал компилированную версию... ругалось че-то там на dynatree... установил полную версию, все заработало... Но не очень стабильная работа...
Ждем с нетерпением новых хороших версий!
Добрый день)))
Поставил AjexFileManager вместе с CKEditor.
папки upload images flash _thumbs были успешно созданы и php файл с ?itWorks выдает что всё хорошо.
Но при попытке произвести upload ничего не происходит. В чем может быть дело?
Странно
В Chrome работает отлично а в FF3.5 никак
итак.
Пусть FF сам разбирается почему не работает этот скрипт.
Вопрос вот в чем: я внес следующие изменения в файлы:
1. $cfg['url'] = '';
$cfg['root'] = $_SERVER['DOCUMENT_ROOT']/* . DIR_SEP . $cfg['url']*/; // http://www.yousite.com/upload/ absolute path
2. На 132 строке в ajax.php
'url'=> /*'/' .*/ $cfg['url'] . '/',
Теперь работает всё кроме 1 вещи-не показываются превью изображений.
Так же кому интересно есть способ прикрутить к 1 странице несколько CKEditor'ов с файловыми менеджерами-способ кривой но работает)))
Сначала определяемся сколько нам нужно полей на странице
Затем копируем папку AjexFileManager сколько надо раз и обзываем их AjexFileManager1 AjexFileManager2 и т.д.
затем в каждой папке находим ajex.js и ищем там AjexFileManager
и переименовываем их в AjexFileManager1 AjexFileManager2 ...
а на странице делаем вот что:
вверху:
<script type="text/javascript" src="AjexFileManager/ajex.js"></script>
<script type="text/javascript" src="AjexFileManager1/ajex.js"></script>
+
в <body>
<textarea cols="80" id="editor1" name="editor1" rows="10">This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">CKEditor</a>.</textarea>
<textarea cols="80" id="editor2" name="editor2" rows="10">This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">CKEditor</a>.</textarea>
<script type="text/javascript">
var ckeditor = CKEDITOR.replace('editor1');
var ckeditor1 = CKEDITOR.replace('editor2');
AjexFileManager.init({
returnTo: 'ckeditor',
editor: ckeditor
});
AjexFileManager1.init({
returnTo: 'ckeditor',
editor: ckeditor1
});
</script>
>Дмитрий
Ночер добрый :)
Превью скорее всего не показываются из за того что в путях слэш удалён, поставьте "/", иначе на выходе он 'путьИзображение' склеивает, вместо 'путь/изображение'.
В каких путях???
Которые я менял???
Давай те я напишу структуру директорий:
htdocs->
images-> здесь изображения
texts -> здесь файлы на которые необходимо ставить ссылки
etc...
А где находятся пути к превьюшкам??? в ajax.php???
Добрый день. В этом прекрасном файловом менеджере не хватает функции "Перенести в" (перенести файл из одной папки в другую). Может автор в свободное время сделает эту функциональность :).
Добрый день.
нельзя ли сделать file manager без Lazy loading'a .
А то минус, который появляется, если в папке нет других папок или файлов, очень запутывает (лучше, если б минуса не было и показывало, что нет ни папок, ни файлов в директории). И еще, После рефреша при нажатии на папку ничего не проишодит, хотя в папке есть файлы.
А так, спасибо за хороший менеджер.
>Дмитрий
Слушайте, а вы кстати зачем закоментировали всё это, вам необходимо просто оставить пустой переменную $cfg['url'] чтобы папки [images, flash, file] учитывались в корне сайта.
Верните на место все, и сделайте $cfg['url'] = "'; пустой.
>Fedia, Утр добрый
Да, этот пункт стоит в списке хотелок на следующую версию :)
>Senia, Добрый утр
Согласен, учту, про рефреш не совсем понял, имеете в виду чтобы окно сохраняло вид текущей папки? которая открыта
>DeeJay
Это текст :)
Я говорил о ошибках в статусе выполнения, а вы кстати попробовали полную(не сжатую) библиотеку использовать?
Ну и после этого, как говорится, хотелось бы услышать начальника транспортного цеха ;)
Все настроил, пару недель все было хорошо, а сегодня увидел, что стиль не грузится и пишет
In the process of creation used the following components, for which it separate thanks ;-)
Хотя ничего за это время не менялось! помогите! в чем проблема?
>fog
-Видимо сервер/сайт на вас обиделись, что уже так долго ничего не менялось, решили вас занять чем нибудь :)
-Прилетело НЛО :)
-2012 наступил раньше по какому то календарю :)
.Проверьте права на папки и файлы
.Проверьте не попортил ли вредный вирус файлы, что скорее всего так и есть, спам боты которые ссылки прописывают в base64*** портя файлы
ничего, никаких изменений файлов, пробовал заливать новые... сайт валяется на локалке... и реально не работает... если вам весело, веселитесь...
>Demphest
Если всё оставить как есть и просто сделать пустой $cfg['url'] то вообще ничего не показывается)))
А нет)))
Всё так же и без превью
Здравствуйте, все вроде поставил. Все работает. Но вот не могу понять, почему у меня файлы складываются в upload/image в кодировке колесо_Р¶РёР·РЅРё
>fog
Не надо воспринимать это так всерьез :) просто сами подумайте какие я могу на основе ваших слов сделать выводы?
Я не телепат ;-)
>Дмитрий
Хм, а они до этого создавались вобще?
Может быть само gd расширение не работает?
>Евгений
Локаль глючит видимо, вы случаем файл ru.php не пересохранили в cp1251?
Или может быть русский апач, который насильно к русскому приводит, такое на старых денверах вроде наблюдалось. Потестируйте функцию translit на ваших настройках.
Нет, ru.php не трогал. Все работает уже у провайдера.
На денвере даже не запускал.
Причем файл на сервере в иероглифах, а в интерфейсе норма.
А если $fileName = getFreeFileName($_FILES['upload']['name'], $toDir); сменить? В MD5 + время, например)
Эх, вот я блин тестер :) оказывается с последнего раза, после переноса файлов не проверил пути, из за этого не работало.
В общем необходимо внести правку в файле lib.php на строке 282 следующий момент:
if (file_exists($langPhp = dirname(__FILE__) . DIR_SEP . 'lang' . DIR_SEP . $cfg['lang'] . '.php')) {
require_once $langPhp;
}
Как выяснилось, банально файл ru.php не подлключался, а я и не заметил.
Ну и само собой язык должен русский стоять: $cfg['lang'] = 'ru';
---
Обновил архивы менеджера.
Спасибо за найденную ошибку ;-)
define('DEV', true);
Но ошибок никаких не выводится. Где начать искать зарытую собаку? На локальном сервере всё работает.
Кстати совместимость с PHP4 можно добиться малой кровью?
>Mikhail
Ошибки надо через firebug(к примеру) отслеживать, так как всё через ajax посылается/принимается.
С php4 в принципе достаточно просто совместимость сделать, там пару функций аналогичных надо добавить, которых в php4 нету: json_encode, json_decode, scandir(она должна быть причём)
Прекрасная софтинка!!! Очень удобная и всем понятная!!! Огромное спасибо! так держать! :)
как я понял, новая версия появится, когда в dynatree появится drag&drop :) ...
Проблема с закачкой никуда не делась:(
Скачал то, что называется "AjexFileManager full with lib"
Список папок опять стал отображаться только после закомментирования48-й строки (mb_internal_encoding('utf-8');) в ajax.php
Всё, остальное вроде работает, но закачка файлов не проходит.
Это вобще может быть связано с закомментированной кодировкой?
>anonim
Нет, она будет когда время высвободится :) пока в очереди следующая версия ;-)
>DeeJay
Ну вот) Выходит у вас mbstring отключён, а он дальше тоже применяется для транслита имён, вот и не проходит видимо файл до конечной точки.
- Или включите mbstring, что будет самым правильным, вобще он по дефолту как правило включён.
- Или вырежте его упоминания, а лучше заглушку сделать даже, на манер:
if (!function_exists('mb_strtolower')) {
function mb_strtolower($s) {
return $s;
}
}
Добрый день.
Из всех найденных мной файловых менеджеров, тех, которые бы делали то, что нужно, оказалось не так и много. Некоторые имеют много ненужного функционала, где-то он хромает, а где-то нет даже элементарных функций файлового менеджера. Alex filemanager мне нравится тем, что в нем пока что нет ничего лишнего и я надеюсь, что скоро появится то, чего, как мне кажется, не хватает - было бы неплохо иметь возможность копировать/ перенести папку, файл в другую директорию (просто указывая в какую директорию перенести или drag&drop из списка файлов в дерево директорий) и не хватает поиска. И тогда менеджер будет похож на лучший (на мой взгляд) файловый менеджер: http://www.ajaxplorer.info/demo. (Очень продуманный drag&drop: когда элемент наводится на дерево директорий, если директория не раскрыта, она раскрывается). Жду новых версий. Удачи!
Продолжаем бороться с НЕзакачкой :)
mbstring включать надо в php.ini, я так понимаю. Нашёл там несколько параметров вида mbstring_разный текст. Чё именно надо включить/раскомментировать? (юзаю Денвер)
С заглушкой уже понятнее. Тока, где её лучше вставить? В котором файле?
Это снова про превью.
Они отображались)))gd точно работает.
Становится интересно
и превью созданы. папка _thumb есть и в ней все превьюшки.
>user
Добрый день
Да, надеюсь всё впереди, спасибо.
>DeeJay
Да, в php.ini необходимо раскоментировать(убрать ; впереди) срочку:
extension=php_mbstring.dll
Если делать заглушку то лучше в отдельном файле, а в ajax.php вначале подключать его.
>Дмитрий
Прям даже не знаю :)
Проверьте какой путь на странице у файлов - превьюшек.
Вот в чем дело то)))
<div class="thumb ext_jpg" thumb="_thumb/images/15199831_1899157.jpg" file="images/15199831_1899157.jpg">
<div class="image">
<img alt="" src="//_thumb/images/15199831_1899157.jpg"/>
</div>
<div class="check">
<input type="checkbox" value="15199831_1899157.jpg" name="file[]"/>
</div>
<div class="name" style="display: block;">15199831_1899157.jpg</div>
<div class="date" style="display: none;">11.12.2009, 14:52</div>
<div class="size" style="display: none;">(700 x 517) 121 KB</div>
</div>
где можно убрать // перед _thumb
Заглушка и раскомментирование не помогают - не закачивается точно также как и раньше.
А как вобще можно проверить наличие mb_string в phpinfo()? Он там как-то маячит, нет?
Пока пробую вырезать его упоминания из кода, но проще будет свой файл-менеджер сообразить :)))
>Дмитрий
lib.php ~124 строка, там формируется 'thumb' => ###
>DeeJay
Эм, ну по идее в phpinfo() если есть большим шрифтом надпись mbstring, под которой табличка параметров разных. Начинается с Multibyte Support -> enabled
То теоретически значит работает :)
Всё работает. Прямо огромное неохватное всеобъемлющее спасибо)))))
Еще вопрос)))
Можно ли сделать так чтобы менеджер видел файлы в корне сайта а не только в папках???
>Дмитрий
На текущий момент нету такой возможности
Вот, где собака порылась: закачка не пашет из-за отсутствия mbstring в этой поставке (в phpinfo() пусто по этой части). Жопа :(
Может, его откуда-то скачать можно?
Понятно. Тогда буду ждать с нетерпением новой версии менеджера)))))
>DeeJay
Ну дыг :)
http://windows.php.net/qa/
>Дмитрий
:)
http://windows.php.net/qa/
Тут же полный пакет PHP. А отдельно этот "типа плагин" нигде не водится? :)
Вопрос к автору , а вот у вас время у каждой статьи и в комментах пишется... Это какое? Московское? Заранее спасибочки за ответ.
добрый день. И все же вернусь к своему вопросу насчет lazy loading'a. Проблемма описана тут http://code.google.com/p/dynatree/issues/detail?id=125, тут : http://code.google.com/p/dynatree/issues/detail?id=118. Какие соображения по этому вопросу?
Только недавно попал на Ваш сайт, теперь каждый вечер захожу посмотреть, не написали ли чего новенького. :) К сожалению только Вы не каждый день свой блог обновляете :(
Автору низкий поклон. Увы, в джаве практически не разбираюсь, потому 2 вопроса:
-CKEditor почему то экранирует кавычки, пробовал и из вашего архива, и из официального. т.е. картинка приходит в виде <img src="\"/upload/image/111.jpg\"" alt="\"\""/> естественно ерунда...
-нет возможности протестировать на хостинге, но на локальном сервере(Денвер) картинки не загружаются, загрузка вечная. но папки создаются удачно, если руками ложить файлы в папки, то их видно. Очень надеюсь на вашу помощ. В долгу не останусь
Раз уж спросил, то и отвечу. В для денвера нужно загрузить расширения, и разкоментить mb_string.
Для того, что бы не бло кавычек, нужно отключить magic_quotes в пхп.ини
Но, у меня получается создавать папки только в папке с файлом ajax.php Ни абсолютные пути, ни относительные не работают. В полной растерянности целый день.
Alexey, ZP
Спасибо за подсказку. У меня аналогичные проблемы с Денвером :)
Буду устранять
Всем привет! :)
>DeeJay
Там на http://windows.php.net/qa/ в пакетах просто в папке "ext" есть все дефолтные расширения, можно было взять один файл php_mbstring.dll просто и к себе скопировать ;-)
>Virtex
Московское вроде как :)
>anonimous
В общем попробую на днях в dynatree эту проблему пофиксить.
А в следующей версии уже буду использовать jsTree
>Alexey
В php
ini_set('magic_quotes_gpc', 'off');
set_magic_quotes_runtime(0);
или в .htaccess
php_value magic_quotes_gpc off
Но в php 5.3+ set_magic функция помечена на удаление
А вот по поводу создания файлов в папке с ajax.php, не сталкивался, может быть дело как раз в глюке с кавычками? или так и остался?
Demphest
А можно ли в следующей версии сделать чтобы файловый менеджер прикручивался к нескольким текстовым полям, так как у меня к примеру их несколько на одной странице. Дмитрий, Старый Оскол 10 Декабря 2009, 20:39 написал как он это делает, но тот вариант не очень удобен
не появляется кнопка "Browse", что я не так сделал?
>lyudistek
Там проблемы в коде возникают, решения пока нету.
>Алексей
Проверьте подключается ли ajex.js, видимо какая-то ошибка при инициализации происходит. Проверьте объект редактора который передается в .init({})
Спасибо автору за его труды.
1)У меня возникают проблемы с загрузкой файлов с русскими именами. Исчезает имя или последняя буква расширения.
2)Можно ли увеличить размер окошка в котором находится кнопка "Посмотреть на сервере"
3)При загрузки файлового менеджера сразу не показываются миниатюры.
Как можно решить эту ситуацию?
Приоритетен 1ый пункт. может имеет смысл формировать случайное имя файла после загрузки на сервер?
@Саша
1) Проверьте включено ли расширение mbstring так как транслит через эти функции делается
2) Если имеется в виду сама левая колонка, то ширина её в классе #dirs {} в dark.css например, по дефолту 20% экрана
3) Не совсем понял, т.е. при нажатии на папку файлы выводятся без изображений? Возможно на новые файлы скрипт не успевает првьюшки сделать просто
Здравствуйте! Покажите пожалуйста на наглядном примере как работает это всё. Допустим в корне сайта есть папка upload. Туда нужно загружать фотографии. Если можно по шагам. Что бы можно было на Денвере потестить. Заранее огромное спасибо. С уважением Евгений.
Demphest
Действительно очень хороший файл-менеджер. Автор молодец, но так как не может быть прикручен к нескольким текстовым полям на одной странице, то теряет свой смысл. Я например в админке использую 3 текстовых поля, а файл-менеджер прикручиваеться только к одному. Но все равно вы молодец, затрачено много труда. Вот если бы еще к нескольким полям ...Мой Вам респект
How can I integrate into TOKO CMS http://toko-contenteditor.pageil.net/
Как я могу интегрировать в TOKO CMS
@Евгений
Написал небольшую инструкцию
http://demphest.ru/ru/programming/instruction-filemanager/
@lyudistek
Только что попробовал в ckeditor 3.1, что-то поправили, теперь работает как минимум с двумя полями.
@Bogdan
Процедура аналогична по идее, но там я вижу FCKeditor, а у него код отличается, используйте более новую версию CKEditor для прикрепления
Demphest. Всё сделал как Вы сказали, проверил несколько раз.
1. По нажатию кнопки "Посмотреть на сервере" - открывается окно файл менеджера, но папок images, file и т.д. - нету.
2 При нажатии на "загрузить файлы" открывается окно загрузки, выбираю файл, окно закрылось - но файлы не выбрались.
3. По проверочной ссылке:
http://site.ru/AjexFileManager/ajax/php/ajax.php?isWork
тупо пустая страница
Вот я даже картинку с примером загрузил:
http://narod.ru/disk/17592282000/123.jpg.html
И если даже просто выбрать загрузить фото через редактор (по одному)- оно тоже не загружается.
Demphest. Вобщем разобрался. На Локалке (на Денвере) не работает. Залил на сервер - всё ОК!
Что можете посоветовать по поводу Денвера. Очень нужно что бы сначала всё отладить, а потом уже в сетку залить.
С уважением. Евгений.
@Евгений
Почти уверен что расширение mbstring не работает, точнее не включено.
Надо в php.ini раскоментировать extension=php_mbstring.dll
+1 к предыдущему комментарию :)
>Евгений
По описанию у меня была такая же проблема.
Решения нашел два:
Вариант 1: Как было написано выше раскомментировать в php.ini строку extension=php_mbstring.dll. Но плюс к этому еще необходимо скачать саму библиотеку php_mbstring.dll и поместить в каталог \usr\local\php5\ext\, т.к. она в базовом пакете Денвера не идет (у меня было так). На сайте Денвера кажется есть пакет с расширением: модули PHP (с этой библиотекой).
Вариант 2: Если закоментировать в ajax.php строку mb_internal_encoding('utf-8'); и создать "заглушки" для функций mb_strtolower, mb_substr, mb_strrpos, mb_strlen, mb_ereg_replace - то на локальном компьютере все работает.
Пример заглушки был где то уже намного выше. (Если есть необходимость могу выложить как я сделал эти пять загушек).
Спасибо за проделаную работу! Посоветуйте наиболее рациональный способ ограничения доступа к AjexFileManager. По идее, сейчас любой посетитель может обратиться к нему по прямому url: site.ru/js/AjexFileManager и удалить все фотографии!?
@Антон
Самый рациональный способ использовать сессии.
- на вашем сайте где-то происходит авторизация пользователя
- в ajax.php, по данным из сессии проверяете пользователя на доступ
- в зависимости от уровня, оперируете переменной $cfg['url']
if ($_SESSION['admin']) {
$cfg['url'] = 'upload';
} else {
$cfg['url'] = 'upload/guest';
}
или, $cfg['url'] = 'upload/' . $_SESSION['user_login'];
Ну и другими переменными из массива $cfg оперировать при необходимости.
Красота — это в общем-то гениальность, даже больше, чем гениальность, ибо она в объяснении не нуждается.
Вопрос.
можно ли с помощью CKFinder загрузить, например, php файл, который будет выполняться сервере. Т.е. я,например, загрузил пхп и могу уже обратится к нему просто по ссылке? вопрос безопастности. я просто не понимаю принцип.
Здравствуйте. Demphest.
А как можно защитить файл: AjexFileManager/index.html
Набираю путь до него из строки адреса и все файлы как на ладони. (для любого человека)
Можно как нибудь его сделать .php
Спасибо!
Demphest.
По Вашему совету, использовать сессии не получается! Потому что они убитые файле ajax.php.
То есть для авторизации я использую 2 переменные $_SESSION['login'] и $_SESSION['password'] но в файле ajax.php они пустые! Почему так? Не подскажите?
@Евгений
У вас на самом сайте видимо место хранения сессий отличается от места по умолчанию.
Проверьте session_save_path() на самом сайте и в ajax.php, они скорее всего отличаются.
С выше сказанным, разобрался!
Вот ещё есть вопрос! Почему, если в файле ajex.php сделать любой вывод на экран (например: echo "Сдесь все что угодно"; )
он перестанет работать (можете попробовать). Да еще сделать запрос к БД тоже не получится (например чтобы сравнить переменные сессии со значениями в БД) Например:
$res=mysql_query("SELECT * FROM admin WHERE login='".$_SESSION['login']."' AND pass='".md5($_SESSION['password'])."'");
if(mysql_num_rows($res)!==1){Header("Location: http://fsb.ru");}
else // всё ништяк!
Это запрос тупо ни что не возвратит (можете проверить)
А очень нужно!
@Евгений
Так как файл ajax.php всегда в зависимости от запроса возвращает json в ответе для дальнейшего парсинга на странице.
А вы когда выводите какую либо информацию, делаете возврат невалидным для javascript'a.
Т.е. выводить что-то в ajax.php не нужно, он не для этого.
А header('Location: ...') туда бессмысленно ставить, он не сработает у вас, т.к. прямого обращения к файлу не идёт.
Поставьте после проверки exit; чтобы не работал менеджер по сути в принципе.
Demphest. Извините, наверное достал уже..
Последний вопрос. Вот есть запрос который я пытаюсь выполнить в файле ajax.php:
$res=mysql_query("SELECT * FROM admin WHERE login='".$_SESSION['login']."' AND pass='".md5($_SESSION['password'])."'");
$a=mysql_num_rows($res)
В данном случае функция "mysql_num_rows" ни чего не возвратит. То есть переменную $a нет смысла проверять. Её просто нет. И суть всей проверки теряется. Если Вы скажете что нужно создать подключение к БД - пробовал. то же самое.
@Евгений
Проверьте по этапам всё.
1) Проверьте подключается ли правильно к базе
2) Сделайте простой запрос без условий к таблице:
$res=mysql_query("SELECT * FROM admin");
3) Если всё работает, то уже смотрите переменные
4) Добавьте в sql запрос логин, проверьте, после добавьте пароль
5) Проверяйте ;-)
Всё отлично, Demphest. Разобрался.
Хочу сказать спасибо за Вашу разработку, и за помощь в настройке. Хороший плагин! Главное чтобы с точки зрения безопасности всё было "тип топ"!
СУПЕРОГРОМНЕЙШАЯ БЛАГОДАРНОСТЬ РАЗРАБОТЧИКУ 5 БАЛОВ!!!
давно искал Ckeditor с встроенным файловым менеджером !!!
I can't upload file and creatsubfloder when manager file on sever plz help me, when I upload then I've error "Error loading or banned file type"
@NguyTieuNhan
Most likely you do not have permission to write to the folder
I created folder upload(image/file/flash) and CHMOD to 777 but when I run http://leloi.edu.vn/soanthao/AjexFileManager/ajax/php/ajax.php?isWork did not work, plz help me.
обновляться то будет что-то? (
@NguyTieuNhan
Are you using php5?
Extension mbstring included?
Check: open_basedir, safe_mode
And the values of variables:
file_uploads
upload_tmp_dir
upload_max_filesize
max_file_uploads
@Никита
Пока не в ближайшее время
вот такой момент я озвучивал уже где пол года назад. он так и не был реализован?
"загружаем картинку в тексте выводится её уменьшенная копия, а при нажатии картинка увеличивается(в идеале спомощью лайтбокса)"
@Никита
Это было 3месяца назад ;-)
Нативной так сказать поддержки пока не ожидается, можете реализовать пока таким образом:
http://demphest.ru/ru/javascript/ckeditor-fancybox-lightbox/
I've problem with upload like NguyTieuNhan, Hà Giang. I replace
$result = 'Error loading or banned file type '; with
$result = 'Error ' . $cfg['root']; and here is result
Error /usr/local/apache/htdocs/upload/
конечно очень мило выглядит, но вот, что заметил:
когда загружаю фаил(у вас в демо), фрейм с файлами в выбраной папке не перегружается, т.е. когда я гружу файл, мне надо обновить, что бы увидеть только что загруженный файл. Думаю, можно сделать поудобнее это дело)
и Второе, когда делает просмотр в виде списка, то выбрав в меню, которое появляется при нажатии правой кнопы меню, я не могу просмотреть файл. Это уже касяк)))
Hi, thanks very much for sharing this code. I have a question about licensing - in your ajax.php it says "Dual licensed under the MIT and GPL licenses", but then straight after that is has the LGPL banner text. Is it licensed under the GPL or the LGPL, or both?
Спасибо оч удобная вещь, давно искал =)
@Art
Да, точно :)
@Denny
Yes, incorrectly written there :). Distribution as is, unlimited ;-)
огромное спасибо тебе зай файл менеджер) горел буквально CKfinder защиту поставил все мои проекты под твой переделаю спасибо тебе друг выручил)
Спасибо вам за ваш труд! И за бесплатный ФМ!!!
Огромное спасибо за менеджер.
Скажите плз., это только у меня проблема, если в tinymce поставить dialog_type : "modal", то при выборе в менеджере картинки окно менеджера не закрвается, но картинка вставляется.
Забыл добавить, что tinymce у меня jquery edition!
почему-то постоянно нада очищать кэш браузера, чтоб залилась картинка...
это можно как-то исправить?
уже 2 дня мучаюсь не могу заставить его работать. директории созданы, work пишет что все хорошо, показывает дизайн без файлов и папок, ошибок в фаербаге нету, все что тут написано почти напамять выучил. а оно не работает и все. плиз хелп
а теперь показывает ошибку 500 internal server error. ктонить подскажите - это хоть мой косяк или может что-то с хостом
Мучаюсь с той же проблемой. не показывает ни каталогов ни файлов. Проблема началась когда в джумле поменял имя базы и префикс по-умолчанию из соображений безопасности. При чем как только возвращась на старую базу и префикс jos_ все начинает работать. Помогите, пожалуйста советом, где пофиксить, пусть даже ручками прописать.
здравствуйте. пол года всё работало ок. сейчас решил поставить новый CKeditor 3.2.1, и файлы перестали грузится? файловый менеджер не подходит для новых версий? к какой максимальной версии он подходит
>Lina
Не сталкивался с этим
>Александр
При ошибке 500, попробуйте удалить .htaccess из AjexFileManager/ajax
>Олег
К сожалению с джумлой не работал не знаю, могу сделать догадку, что она путь какой то меняет и поэтому перестает работать.
>никита
Привет, скачайте измененный из темы: "Ajex File Manager 1.0.2 мини-патч" с ним будет работать.
Здравствуйте! Я поставил этот менеджер себе на сайт с ckeditor, но не могу с помощью него закачать файлы. Не появляются кнопки вверху около надписи About
Здравствуйте! как можно убрать (временно) кнопку удаления директорий, ну или убрать с неё onclick. Какой код и где закоментировать.
Спасибо!
Здравствуйте Евгений.
Програмно можно убрать из ajax.php, блок:
---
case 'deleteFolder':
....
---
Чтобы в меню не было видно, надо из ajex.filemanager.js убрать блок:
---
{
'<span lang="deleteFolder">Delete folder</span>' : {
onclick: function(menuItem, menu) {return Action.deleteFolder();},
icon: 'skin/_ico/folder_delete.png'
}
},
---
Чтобы просто отключить, то в том-же .js можно заменить
deleteFolder: function() {
на
deleteFolder: function() { return false;
Здравствуйте Demphest.
А как просто запускать менеджер, без редактора.
Если просто указать путь до папки, то всё работает, только почему то не все файлы отображает. (например те, у которых расширение из больших букв - file.JPG - их не видно).
Попробовал в ajax.php добавить в массив расширение с большими буквами - не помогло.
@Евгений
Перекачайте архив: "Ajex File Manager вместе с CKEditor 3.2.1"
поправил проблему с верхним регистром, а для того чтобы открыть скрипт напрямую надо напрямую файл вызвать например следующим образом:
http://demphest.ru/demo/AjexFileManager/AjexFileManager/index.html?type=file&connector=php&lang=ru&skin=dark&contextmenu=true
Если нажать правую кнопку мыши и выбрать -> перезагрузить, тогда после перезагрузки не видны никакие файлы, пока не пощелкаешь по папкам. А также при повторном просмотре, вышел из менеджера вернулся опять, он запомнил выбранную в прошлый раз папку и снова пока не щелкнешь на другую папку содержимое текущей (запомненной) увидеть никак нельзя. А также, загрузка файлов в этом случае не работает, пока по папкам не пощелкаешь.
Ув. demphest! Подскажите из-за чего может быть такое: - когда загружаешь изображения (жмем на иконку) - открывается стандартное диалоговое окно браузера на сохранение файла ajax.php к себе на компьютер. Жму отмена... обновляю редактор - фото загружено! И так не только в самом вашем редакторе но и при загрузке через окно CKEditor... там где вставить картинку загрузив ее на сервер... тот же файл предлагает сохранить.
Использую Google Chrome последний.
-> upd
В Fireworks последнем то же самое. Архив редактора скачивал по ссылке вверху страницы Ajex File Manager вместе с CKEditor 3.2.1...
@Михаил
Поправил, теперь при открытии автоматом будет подгружаться папка, при которой было закрыто окно.
@Алексей
Видимо у вас php файлы не обрабатываются сервером как положено, поэтому браузер предалагает вам скачать файлы. Проверьте работоспособность php.
Доброго времени суток, Александр.
Никак не могу увеличить максимально допустимый размер загружаемого файла.
Буду благодарен любой подсказке.
С уважением, Игорь
@Игорь
Привет, тут вариантов не много на самом деле, если ini_set('upload_max_filesize', '128M'); не срабатывает, то если апач - можно попробовать указать в .htaccess
php_value upload_max_filesize 128M
Если не схватится, то или в панели хостинга увеличивать или напрямую в php.ini если есть доступ.
Demphest - про запись от 22 Мая 2010, 23:46)
Проблема решается если за комментировать строку в ajax.php
header('Content-Type: text/json; charset=utf-8');
- после этого все исправно работает.
Спасибо огромное за труд.
Долго не мог разобраться, слава богу, все заработало.
У вас в архиве файл ajax.php не закрыт тегом ?>
И понял, почему не работало на Денвере. Обращение шло к корню, то есть к корню самого сервера, а не сайта проекта.
Это так может быть в том случае, если сайт на Денвере делается не в home/имя сайта.ххх , а в home/localhost/www/сайт.
@Вадим
Корень определяется через $_SERVER['DOCUMENT_ROOT'], видимо на Денвере он не то возвращает получается.
А закрывающий тэг "?>" не является обязательным, он никаких проблем не должен вызывать.
Hi Demphest,
I Love your file browser!
One question. I want to place the index.html file outside the AjexFileManager dir. After that I linked the css and js includes in the index.html to the right location in the AjexFileManager dir.
But fore some reason the filemanager won't load correctly. Is there something I do wrong or is it just not possible?
Thx!
Greetz
Patrick
Hello Patrick.
You better in this case, manually prescribe the path to the files
1) index.html, need to add paths to files
<link type="text/css" href="/AjexFileManager/lib/dynatree/skin/ui.dynatree.css" rel="stylesheet" />
<script type="text/javascript" src="/AjexFileManager/lib/jquery.js"></script>
...
2) ajex.js, remove "this.path +", to prescribe the desired path
params.editor.config['filebrowserBrowseUrl'] = this.path + '/index.html?
..
params.editor.config['filebrowser' + type[i] + 'BrowseUrl'] = this.path + '/index.html?
--->
params.editor.config['filebrowserBrowseUrl'] = '/YourDir/index.html?
params.editor.config['filebrowser' + type[i] + 'BrowseUrl'] = '/YourDir/index.html?
3) lib/ajex.filemanager.js, put the necessary path
var $ajaxConnector = '/AjexFileManager/ajax/php/ajax.php';
..
$('head').prepend('<script type="text/javascript" src="/AjexFileManager/lang/' + $cfg.lang + '.js"></script>');
$('head').append('<link type="text/css" href="/AjexFileManager/skin/' + $cfg.skin + '/' + $cfg.skin + '.css" rel="stylesheet" />');
if ($cfg.contextmenu) {
$('head').append('<script type="text/javascript" src="/AjexFileManager/lib/jquery.contextmenu.js"></script>');
}
Hi Demphest,
Thx it works! Do you have any idea if the AjexFileManager can cooperate with an greybox like: http://nyromodal.nyrodev.com/
If I load the AjexFileManager in the greybox I get the problem again that it won't load correctly.
Maybe it is to many to ask but do you know how to do this? I think if you can load the AjexFileManager into an greybox it becomes one of the best filemanagers at the moment!
Greetz
Patrick
When I try to upload images on CKEditor's upload-tab, i get the error message "Image source URL is missing."! Thank You for helping! emantsol
Прошу прощения, что вмешиваюсь, устал с одним косяком надеюсь его подправят AjexFileManager/ajax/php/lib.php
function getFreeFileName($fileName, $dir)
нужно поменять
$dotPos= mb_strrpos($fileName, '.', null, 'utf-8');
$fname = mb_substr($fileName, 0, mb_strrpos($fileName, '.', null, 'utf-8'), 'utf-8');
на
$dotPos= mb_strpos($fileName, '.', null, 'utf-8');
$fname = mb_substr($fileName, 0,$dotPos, 'utf-8');
Будет корректнее работать и определять правильно имя файла и расширение. Данная проблема воникает на некотрые серверах, видимо из-за PHP. Если Ajex File Manager непрвильно сохраняет имя файла то данная ошибка лечится только так.
Надеюсь хоть кто то скажет спасибо.
A new installation of ckeditor and ajex-filemanager solved the problems.
Я эту проблему правил даже в последней версии, которая была выложена на этой странице "ajexFileManager-ckeditor(3.3)".
Я думаю новая инсталляция не исправит проблему :)
@lostop
Поправил и обновил архив, спасибо
Добрый день! почему если в пути файла присутсвует пробел, его зяменяет на +. В дальнейшем путь с + просто не корректен, не отображается файл, если заменить его на %20 то все работает, может посдкажите?? либо у меня с сервером не то, либо я даже не знаю
Некто Никита интересовался 23 февраля как прикрутить fancybox для просмотра фотографии.
Реализуется крайне просто:
Скачиваем fancybox с сайта-производителя.
Распаковываем скрипты копируем в нужную папку, у меня в папке lib/fancybox
открываем index.html что в корне ajexFileManager
До строки <script type="text/javascript" src="lib/ajex.filemanager.js"></script>
необходимо вставить
<script type="text/javascript" src="lib/fancybox/jquery.mousewheel-3.0.2.pack.js"></script>
<script type="text/javascript" src="lib/fancybox/jquery.fancybox-1.3.1.js"></script>
<link rel="stylesheet" type="text/css" href="lib/fancybox/jquery.fancybox-1.3.1.css" media="screen" />
Далее открываем lib/ajex.filemanager.js
Правим:
lookFile: function() {
вместо:
window.open($cfg.url + $cfg.dir +'/'+ $cfg.file, 'preView', '');
записываем:
data = "<img src='" +$cfg.url + $cfg.dir +'/'+ $cfg.file +"'>";
$.fancybox.showActivity();
$.fancybox(data);
Результатом потраченных 10 минут будет отображение выбранной фотографии при помощи fancybox при выборе "Просмотреть" в контекстном меню ( http://clip2net.com/clip/m48399/1278437588-clip-21kb.jpg )
Полезным очень было бы сделать предварительное предупреждение "Уверены?" при выборе удаления файла перед его непосредственным удалением.
как то странно у вас пути определяются.
это мне что для каждого сервера что ли пути подбирать куда будет ставится проект с этим менеджером.
вот он такой вот путь у меня определил D:/Webserver/xampp/htdocs/upload
только вот скрипт там лежит совсем не там.
и папка вроде есть но скрипт ее не видит.
Скачал, посмотрел, удалил. Кошмар. Сам еле разобрался, а обычный пользователь, забивающий тексты-новости, не осилит. Интерфейс - ужасен.
Hello,
I have integated your File Manager in my Backend with CKEditor.
I just have the problem, that when I upload a .gif image it will be saved as a jpeg file. For example test.gif will be saved as test.gif.jpg.
Is there a way to fix that problem? I need the .gif images because .jpg dosent provide a transparent background.
It would be really nice if there were a way to fix that.
Best wishes from Basel
Freddi
У меня такая проблемка, подскажете может где туплю. папка upload по умолчанию создается в папке adm (где админка сайта с цкедитором и прочими делами). Нужно перенести папку uploads в корень чтоб картинки показывались в статьях (файл отображения статей в корне).
В ajax.php в строке
$cfg['root'] = $_SERVER['DOCUMENT_ROOT'] . DIR_SEP . $cfg['url'] . DIR_SEP; // http://www.yousite.com/upload/ абсолютный путь до папки
меняю абсолютный путь и получается:
$cfg['root'] = 'http://www.мойсайт.com.ua/upload';
Но в менеджере я только папку аплоад и вижу вместо папок внутри.
по запросу ajax.php?isWork
Directory not found: http://www.мойсайт.com.ua/upload/
Failed created, You need to create the folder manually, or set the right
Вам необходимо создать папку вручную, или выставить права
Хотя папка аплоад и папки в ней есть и с правами 777.
при настройках DOCUMENT_ROOT по умолчанию все нормально работает.
>Евгений
По идее плюс ставит php-функция urlencode(), но в результирующем выводе вот только он пропадать должен.
>Antoshka
Хорошо, учту пожелание
>Sergey
Скрипт определеят рутовую папку (через $_SERVER['DOCUMENT_ROOT']), в которой теоретически должна лежать папка upload, а не относительно своего местонахождения.
>Freddi
Hello, this hotfix is only expected in the next release. I have just started to do.
>Сергей
Вы неверено указали абсолютный путь, надо
$cfg['root'] = '/путь/до/папки/upload/';
т.е. http в нём не надо указывать.
Ребята, 2 дня сижу:
http://dxwwww.ru/AjexFileManager/ajax/php/ajax.php?isWork
ничего не выдает ни на Денвере ни на sweb.ru
слева в менюшке нет папок. в чем может быть поблема. все комментарии перечитал
Огромное спасибо, наикрутейшая штука. Облегчила жысть невообразимым образом.
Может кто сталкивался с проблемой:
Не отображается UOLOAD и ява дает ошибку:
Uncaught exception: TypeError: Cannot convert 'reply' to object
Error thrown at line 229, column 2 in <anonymous function>(reply) in http://.../AjexFileManager/lib/ajex.filemanager.js:
for (var i in reply.config)
called from line 123, column 1033 in b():
e.success&&
called via Function.prototype.call() from line 129, column 367 in <anonymous function: x.onreadystatechange>(q):
j||b();
Разобрался со своей проблемой и Дамира у него скорее всего тоже самое.
На хостинге у PHP не подключены функции mb_ а программа к сожалению их пользует. Поэтому есть два решения этой проблемы:
1. Уговорить хостера подключить эти функции (маловероятный вариант)
2. Написать эти функции самому. (совершенно реаль, но скорее всего будет тормозить)
И есть еще третий вариант искать другой менеджер, который не использует эти функции. (жаль менеджер хороший.)
mbstring мне установили, а вот с json послали. Так, что буду искать другой менеджер наверно(((
Очень неплохой файловый браузер. В основном работаю с Drupal, там по CKEditor есть IMCE, но тут понадобилось писать CMS вручную, и Ваш браузер пришёлся очень кстати. Спасибо. Заработал с первого раза, каких-либо глюков пока не наблюдаю.
Запросил у хостера все необходимые функции подключены
Хочу вставить в текст страницы превьюшку изображния, нажимаю "Выбрать это превью" и в адресную строку CKEditora приходит лишь "_thumb" и естественно миниатюра не вставляется.
Когда я нажимаю кнопку "Изображение" в редакторе (ckeditor), я могу видеть и загружать только картинки.
Когда я нажимаю кнопку "Flash", я могу видеть и загружать только флэш-ролики.
А как быть с папками file и media ?
Я могу как-нибудь сделать так, чтобы какую бы кнопку из этих двух я не нажал, я мог бы видеть и загружать все файлы во всех папках в upload. (при этом, естественно, сохраняя правильную работу параметра $cfg['allow']) ?
Спасибо.
UPD: по поводу "Хочу вставить в текст страницы превьюшку изображния".
Разобрался сам: сначала выделить левой кнопкой мышки нужную превьюшку, а потом правой кнопкой "Выбрать это превью".
Возможно ли добавить контроль доступа использования функциональности(Добавление, Удаление, Правка) через конфигурационный файл?
Благодарствую за плагин!
все пашет только не может закачивать файлы кроме изображения.
пишет что они не разрешены, хотя в конфигах указан весь список необходимых расширений.
права на папки указаны 777.
в чем может быть загвоздка?
заранее благодарю!
Нельзя ли выложить pack.js, в котором работает обновление директории после загрузки файла и остальные исправления?
Спасибо большое.
Данный файл-менеджер понимает только графические файлы.
Имеется настройки, позволяющие работать с неграфическими файлами:
(строка 70) $cfg['deny']['file'] - запрещенные неграфические файлы
(строка 82) $cfg['allow']['file'] - разрешенные неграфические файлы
Однако, файл-менеджер игнорирует эти настройки. В итоге:
- файлы не загружаются на сервер;
- не отображаются в списке загруженных файлов в папках 'upload/file' и 'upload/image'
Предлагаю решение проблемы:
1. Правим ajax.php
1.1.
(строка 136): вместо 'allow' => implode('|', $cfg['allow'][$cfg['type']]),
вставляем 'allow' => implode('|', $cfg['allow']['image']).implode('|', $cfg['allow']['file']),
1.2.
(строка 154): вместо if (in_array($ext, $cfg['allow']['image'])) {
вставляем if (in_array($ext, $cfg['allow']['image']) || in_array($ext, $cfg['allow']['file'])) {
1.3.
(строка 207): вместо if (!in_array($ext, $cfg['deny'][$cfg['type']]) && in_array($ext, $cfg['allow'][$cfg['type']])) {
вставляем if ((!in_array($ext, $cfg['deny']['file']) || !in_array($ext, $cfg['deny']['image'])) && (in_array($ext, $cfg['allow']['file']) || in_array($ext, $cfg['allow']['image']))) {
2. Правим lib.php
2.1.
(строка 102): вместо if (!in_array($files[$i], $cfg['hide']['file']) && !in_array($ext, $cfg['deny'][$cfg['type']]) && in_array($ext, $cfg['allow'][$cfg['type']]) && is_file($full . $files[$i])) {
вставляем if (!in_array($files[$i], $cfg['hide']['file']) && (!in_array($ext, $cfg['deny']['file']) || !in_array($ext, $cfg['deny']['image'])) && (in_array($ext, $cfg['allow']['file']) || in_array($ext, $cfg['allow']['image'])) && is_file($full . $files[$i])) {
В результате с НЕ ГРАФИЧЕСКИЕ файлы обрабатываются также, как и ГРАФИЧЕСКИЕ:
- из можно загружать, удалять, переименовывать,
указаывать для них настройки 'deny' и 'allow'
Но, есть вытекающий из этого нюанс:
- в папки upload/file и upload/image можно при желании
можно загрузить и ГРАФИЧЕСКИЕ и НЕ ГРАФИЧЕСКИЕ файлы.
т.е., например, в папку upload/file можно загрузить и текстовый и графический файл.
Для меня этот нюанс не принципиален.
Но, если требуется жесткая привязка папки к типу файла,
вместо предложенного решения, правьте ajex.filemanager.js
Насколько я понимаю, там необходимо сделать так,
чтобы в зависимости от выделенной папки (upload/file или upload/image),
менялся параметр URL ?type=file или ?type=image
В 1.1 пропущен разделитель между строками. Правильно так:
'allow' => implode('|', $cfg['allow']['image']).'|'.implode('|', $cfg['allow']['file']),