An Open File Manager for CKEditor 3.0

CKEditor is the successor to FCKEditor, an open-source, embeddable HTML editor which adds WYSIWYG editing capabilities to countless content management systems, blogs, and other web-based applications. FCKEditor was extremely feature-rich compared to its competition, being one of the few of its kind to include its own file browser and upload mechanisms, along with an API which enabled developers to integrate it with their server-side language of choice. The final version of FCKEditor shipped with built-in connectors for a wide variety of languages and platforms, including ASP.NET, ColdFusion, Java, Lasso, PHP, and Python. (Core Five contributed the Lasso connector to the project.)

However, over time, and despite a highly configurable, pluggable architecture, the code base for FCKEditor, initially released in 2003, began showing its age. Markup and scripting were a patchwork quilt of outdated methods, and performance was suffering. Thus, a complete, ground-up rewrite was started, culminating in the release of the newly-dubbed CKEditor 3.0 in 2009.

The new release is very impressive. Load times are noticeably faster, and a new, modern API makes client-side configuration and integration considerably more direct and powerful. Unfortunately, one victim of the streamlining was the built-in file manager. CKEditor is now pure JavaScript. The developers offer a commercial package, CKFinder, which provides server-side integration for ASP.NET, ColdFusion, and PHP, but there is no longer a free file manager built into the open source editor to which you can add your own server-side connector.

Thus, we decided to write our own replacement file manager, which we are releasing today. We didn’t bother giving it a fancy name; we’re just calling it FileManager. FileManager is powered by jQuery, and incorporates a variety of plugins to provide various bits of functionality:

The mini icons are from the venerable Silk icon library (http://www.famfamfam.com/lab/icons/silk/), and the large icons are based on the FineFiles collection (http://plainz.oh.land.to/download_icon.html), though we have created a handful of additional icons on our own.

FileManager Preview

In the spirit of the original FCKEditor file manager it is intended to replace, FileManager provides a simple javascript API which you can use to write a connector for your preferred server-side language. The API is described in detail in the ReadMe.txt file within the project, and also on the FileManager project page. At the time of this writing, the only complete connector is for Lasso. A python connector is nearly finished. Submissions for other languages (as well as bug fixes and suggestions in general) are encouraged!

FileManager integrates with both FCKEditor 2.x and CKEditor 3.x. For complete instructions, including how to download the project, see the project page.

Share this:
  • email
  • DZone
  • Digg
  • del.icio.us
  • Technorati
  • Twitter
  • StumbleUpon
  • LinkedIn
  • Slashdot
  • Fark
  • Reddit
  • FriendFeed
  • Facebook
  • Posterous

87 Responses to “An Open File Manager for CKEditor 3.0”

  1. Tweets that mention Core Five Labs » Blog Archive » An Open File Manager for CKEditor 3.0 -- Topsy.com Says:

    [...] This post was mentioned on Twitter by jessedp and Jason Huck, Johan Sölve. Johan Sölve said: RT @jasonhuck: We just released an open source replacement file manager for #CKEditor 3.0: http://bit.ly/3LdrTE [...]

  2. jbland Says:

    Thanks a million for this…

    i tried to grab from svn, but apparrently there’s nothing there yet …

  3. admin Says:

    @jbland – It’s working fine for me:
    svn co svn://corefive.com/svn/filemanager/

    - jason

  4. Peter Says:

    The project page pointed to svn://corefive.com/svn/trunk/
    but svn://corefive.com/svn/filemanager/ work fine! Thanks :-)

  5. jbland Says:

    Got it. Having a S.O.S day (stuck on stupid)

  6. uberVU - social comments Says:

    Social comments and analytics for this post…

    This post was mentioned on Twitter by jasonhuck: We just released an open source replacement file manager for #CKEditor 3.0: http://bit.ly/3LdrTE...

  7. admin Says:

    @daniel – Sorry, WordPress made some links complete (http://...) that should have just been absolute (/…), so when we moved from development to production, a few links were broken. Those have been corrected now. Please use this URL:

    http://labs.corefive.com/Projects/FileManager/

    Sorry for the confusion!

    - jason

  8. copqo Says:

    It would be perfect if there was a php connector available. May be I can write one if I have enough time. Thanks a lot for FileManager I didn’t understand why CKFinder is so expensive anyway…

  9. weby Says:

    Have you seen PGRFileManager?

    http://pgrfilemanager.sourceforge.net/

    It is really nice too.

  10. admin Says:

    @weby – I hadn’t seen that one in particular, but it looks like it’s designed specifically for PHP, as are some others we’ve seen. In fact, PHP is one of the languages that CKFinder (the commercial solution offered by the authors of CKEditor) already supports.

    We wanted to provide an open alternative that would allow developers to use ANY server side language via a simple API. We will of course add connectors for additional languages as they are contributed.

    Thanks for the interest,
    Jason

  11. Connie Says:

    The SVN-Download is not possible, connection refused by the server

    I am starting the download with Tortoise, with IP from Germany

    very friendly ;=(

  12. Riaan Says:

    At the moment I’m writing a PHP connector for filemanager. It’s almost done, and when so I will contact Core Five to publish the code with the filemanager.

  13. Jean Reis Says:

    I wrote a PHP connector too, it needs more testing though (I only tested it on two different environments). Not the best code in the world, but it works, and it’s relatively secured. Anyone interested give me a shout at jean dot reis at gmail dot com.

    Anyway, I’ve found a couple issue with file manager, it doens’t work too well on Chrome 4.0 (beta, linux version), and under Opera (10.x) the popup needs to be bigger than in Firefox, the window resizing function doesn’t seem to work too well. I haven’t tested it under Windows.

    Other than that I’ve found some minor issues (not cleaning the file upload input after a successful upload, for example) that I think can be easily addressed.

    Now to add some localization support :)

    PS: congratulations on a good work, filemanager looks real good!

  14. Stefan Says:

    Hi Jean Reis!

    First of all to FileManager Team: Great Work!
    @Jean: I#m not familiar with lasso or python. Im interested in PHP Connector. Maybe you can share it to the Team?
    greetings from Austria

  15. Jean Reis Says:

    @Stefan: no problem, I just don’t know where to host the files. I’ll try to e-mail someone at Core Five regarding this. Meanwhile, I can send you the connector via e-mail if you want.

  16. Jeff Whitfield Says:

    Jean,

    Could you send that PHP connector to me as well? I’m looking at possibly integrating this file manager with MODx. We’ve been using the MCPuk one for too darn long. LOL!

    Jeff Whitfield

  17. Jean Reis Says:

    Jeff,

    I got your email, I sent you the connector files (about an hour ago, according to Gmail), didn’t you get it? Maybe it got marked as spam..?

    I can try sending it again, maybe to another address if you have one.

    Jean Reis

  18. Riaan Says:

    Just finished my PHP connector. You can download the zipfile at:
    http://bit.ly/16IMwX

    Installation:
    1. Unpack the zipfile in filemanager/connectors. There will be a new directory called php;
    2. Customize the config file (php/filemanager.config.php) to your own settings;
    3. Don’t forget to set the var lang to php in filemanager/scripts/filemanager.config.js
    4. Enjoy the plug-in

    note 1:
    I had to customize the file filemanager/scripts/jquery.filetree/connectors/jqueryFileTree.php, because $root was not defined. Adding the line ‘$root = $_SERVER['DOCUMENT_ROOT'];’ to the top of the document did the trick.

    note 2:
    For image support add the type=Image inside your ckEditor replacement:
    CKEDITOR.replace( ‘editor1′,{
    filebrowserBrowseUrl: ‘filemanager/index.html’,
    filebrowserImageBrowseUrl : ‘filemanager/index.html?type=Images’,
    filebrowserUploadUrl : ‘filemanager/index.html’,
    filebrowserImageUploadUrl : ‘filemanager/index.html?type=Images’
    });

  19. Jean Reis Says:

    @Riaan: Nicely done, way more structured than my code!

  20. admin Says:

    Thanks @Jean and @Riaan for contributing PHP connectors! We’ll get something into the repository shortly.

    - jason

  21. robi Says:

    @Riaan
    i’ve tried your connector and do like you write on note. but nothing is show on file manager i can’t see any file.
    i used windows as my local server.
    this what i do
    i change var fileRoot=’images/fileicons/’
    and do everything like you said.
    my dir structure are

    mysite
    -ckeditor
    -filemanager
    please Help

    oh yes i used v 3.1 ckeditor
    thank you..

  22. robi Says:

    sori my mistake. it works reaaally greats now :)

    thank you

  23. simo Says:

    Core Five Labs & Riaan > nice job guys!! many thanks

    (Send you soon a french translation)

  24. simo Says:

    Riaan > I haven’t look at other connectors, but there is some trouble with the path (and preview). I think the path should be defined once in filemanager.config.js (fileRoot var). And the connector should not play around with $_SERVER['DOCUMENT_ROOT'] …. what do you think?

  25. simo Says:

    http://gist.github.com/236862 Here comes the french translation but also I ‘finished’ what Riaan started regarding HTTP_HOST. I just created a private method named hostPrefixed() …

  26. james Says:

    I’ve completed and aspx connector, where should I send it?

  27. admin Says:

    @james – I sent you an email regarding your connector. Did you receive it? We’d be happy to add it to the repository.

    Thanks,
    Jason

  28. Ally Says:

    I’m just getting a spinning wheel when it goes to browse the folders – no previews, etc. Can’t download, etc.
    And in the javascript console, a error for the value of ‘Width’ – anyone else come across this?

  29. admin Says:

    @Ally – Which connector are you using, and on what platform?

    I’ve added Riaan’s PHP connector to the repository along with simo’s additions. The version I checked in includes a fix for an issue on MacOS X.

    - jason

  30. Ally Says:

    Apache/PHP, using the PHP connector. A review of the logs suggests it’s not able to complete file functions. stats, size, etc.

    I’ll give the newly checked in files a go.

    A.

  31. Ally Says:

    No luck. it seems to be a double up on the $path value.

    A.

  32. admin Says:

    @Ally – I would check file system permissions on the directory you are reading from.

  33. jean Says:

    Ah! It seems the warning about the timezone not being set is not exclusive to Mac OS X, but rather to PHP 5.3.0. I recently upgraded to it, and the warning manifested itself where it previously didn’t. Apparently there’s no reliable way to automatically find out the correct timezone, so it has to be specified manually.

    Regarding translations, I can provide a Portuguese version (pt_PT).

    I was hoping we could have a single translation file for the whole filemanager, instead of having translations for the client (HTML + JS) component, and translations for each connector.

    One possible way to achieve this would be to have the connectors output translation keys that would be matched against an array (translation map, if you will) on the client, instead of sending already translated text.

    This would involve rewriting all the connectors (and of course changing the way all text is displayed on the client), but we’ll have a simpler translation mechanism.

    Comments?

  34. simo Says:

    I totally agree with you Jean, regarding the translation mechanism.

    Something else > The ‘langCode’ var is passed into the URL. The PHP connector (I don’t know about others) don’t take it into account but use HTTP_ACCEPT_LANGUAGE server var. I really think langCode should be used first, and only if not defined must be replaced by $_SERVER value.

    (If you want, I can patch the method for that)

  35. odg Says:

    First, this is a really nice file manager! keep up the good work!

    Though, I get the same error as Ally….

    The filetree works like a charm and displays all files in the fileRoot directory and sub-directories.
    Previews aren’t shown at all.. spinning wheel

    Error: props is undefined
    Source File: http://../filemanager/trunk/scripts/filemanager.js
    Line: 414

    Using PHP connector (checked out today, rev16) and apache on linux.
    My permissions on the fileRoot directory and all sub dirs are correct.

  36. simo Says:

    odg > have you tried to add $config['add_host'] = true; in filemanager.config.php file ?

  37. odg Says:

    Ok i found it out:

    like Riaan said, i added
    $root = $_SERVER['DOCUMENT_ROOT'] . ‘/’;
    to the top of scripts/jquery.filetree/connectors/jqueryFileTree.php, which is missing in the svn repository.

    This is my setup:
    My site is at /var/www
    My Folder i want to manage is at /var/www/upl
    My fileRoot in scripts/filemanager.config.js is now ‘/upl/’

    btw, setting $config['add_host'] to true or false made no difference for me…

    but finally it works :)

  38. odg Says:

    I found out, that even when the auth function in the php connector returns false, the filetree still works and you can still browse the directory, see all files and folders, because there is no auth-check in the jquery.filetree…

    I added a quick&dirty solution to the top of scripts/jquery.filetree/connectors/jqueryFileTree.php

    require_once(‘../../../connectors/php/filemanager.config.php’);
    if(!auth()) {
    echo “You are not authorized to use filemanager”;
    die;
    }

  39. aceman3000 Says:

    I can´t get the svn checkout. My connection is refused from different computers and operating systems.
    MacOs X with subversion 1.5.2 and a Debian Linux with subversion 1.5.1
    Where do i get the files?

  40. Riaan Says:

    @simo:
    - fileRoot: I tried to fix it in de .js, but didn’t worked for me. Do you have got a working example?
    - hostPrefixed: nice job :) it didn’t give errors in previews of images? That’s why I didn’t finished it (and lack of time :P )

    @admin:
    - It might be good to create a github account for the filemanager?

    I also added image support. You can add ‘?type=Images’ in the CKEDITOR.replace path configuration. Problem is that the filemanager still will show the files in the left menu.

  41. Sandro Says:

    Hi all,
    I’m writing an aspx connector. Can I upload my work?

    Thanks

  42. aceman3000 Says:

    Can somebody send me the files or a correct link to aceman3000@gmail.com?
    I can´t get the files via subversion. Please help.

    Thanks in advance
    Aceman

  43. simo Says:

    @riaan :

    >> fileRoot: I tried to fix it in de .js, but didn’t worked for me. Do you have got a working example?

    Well, it didn’t work as I suggested before and I didn’t want to make changes inside the whole code of course! Consequently I gave up and started working around the host. For more commodity, I still think the path should be defined only once in the .js file!

    >> hostPrefixed: nice job :) it didn’t give errors in previews of images? That’s why I didn’t finished it (and lack of time :P )

    No, it’s working well (at least for me!) If anyone else has feedback, let me know

  44. Giaffa86 from Catania , Sicily Says:

    Great!!!

    Work fine!!!

    Is very excellent file manager for ckeditor!

    Thank so much!!

    Keep up the good work!

  45. Ben Says:

    in what file do we update the instance code? also, where do we update the code in the file? This seems to never have been explained on any of the doc pages.

    ie. CKEDITOR.replace(‘instancename’, {…

  46. admin Says:

    @Ben –
    See http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Integration

    Basically, you add the main CKEditor script, and then if you want to override the default configuration options (which you normally do), you add the “CKEDITOR.replace(…)” stuff in your own, new script.

    - jason

  47. Decagrog Says:

    Hi all,
    First of all thanks for your work, i’ve just switched today to ckeditor 3 in my webapp and discovered that the filemanager is missing.
    I’ve had some problem with the path configuration, it took me a couple of hours to get it to work in my local enviroment (apache+php+mysql).
    Basically in filemanager.config.js i’ve put:
    var fileRoot = ‘/mysite/public/uploads/userfiles/’;
    where /mysite is the site folder into the root of apache

    in config.js of CKeditor i’ve put:

    CKEDITOR.editorConfig = function( config )
    {
    // Define changes to default configuration here. For example:
    // config.language = ‘fr’;
    // config.uiColor = ‘#AADC6E’;

    // added code for filemanager http://labs.corefive.com/Projects/FileManager/ ——>
    config.filebrowserBrowseUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/index.html';
    config.filebrowserImageBrowseUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/index.html?Type=Images';
    config.filebrowserFlashBrowseUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/index.html?Type=Flash';
    config.filebrowserUploadUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/connector/php/filemanager.php?command=QuickUpload&type;=Files';
    config.filebrowserImageUploadUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/connector/php/filemanager.php?command=QuickUpload&type;=Images';
    config.filebrowserFlashUploadUrl = ‘http://127.0.0.1/mysiteNG/public/filemanager/connector/php/filemanager.php?command=QuickUpload&type;=Flash';
    // end: code for filemanager ——>

    };

    At this point the all is working except the filetree.
    Into the jqueryfiletree.php the path given to the scandir function is $root plus $_POST['dir'] , where $root was not defined and $_POST['dir'] take the path given to the fileRoot var in filemanager.config.js
    In order to use the filetree i’ve pass to scandir the complete system path ( not sure if it was necessary but i didn’t found other solution…) using the $root var, so:
    $root = ‘C:/Program Files/BitNami WAMPStack/apache2/htdocs/’;

    With this configuration all seems to work correctly but i’m not very happy with it, because when i change local enviroment or when i upload all to production i must modify again the path.
    I was thinking to pass via $_SESSION the path (already defined in a general config file of my site), but how i can use the php session into the two .js file ?

  48. Ben Says:

    Jason,

    I’m installing ckeditor in my oscommerce admin area and this is what I did with no luck.

    I uploaded the files from svn, filemanager to
    /admin/ckeditor/filemanager

    Then I downloaded the php connector above here:
    http://bit.ly/16IMwX

    Next I followed the directions for the php connector and followed his instructions:
    Installation:
    1. Unpack the zipfile in filemanager/connectors. There will be a new directory called php;
    2. Customize the config file (php/filemanager.config.php) to your own settings;
    3. Don’t forget to set the var lang to php in filemanager/scripts/filemanager.config.js

    note 1:
    customized the file filemanager/scripts/jquery.filetree/connectors/jqueryFileTree.php, because $root was not defined. Added the line ‘$root = $_SERVER['DOCUMENT_ROOT'];’ to the top of the document…

    After the “so-called” installation, Then within the php page I want to load ckeditor I added this to the header before :

    CKEDITOR.replace( ‘content’,{
    filebrowserBrowseUrl: ‘./ckeditor/filemanager/index.html’,
    filebrowserImageBrowseUrl : ‘./ckeditor/filemanager/index.html?type=Images’,
    filebrowserUploadUrl : ‘./ckeditor/filemanager/index.html’,
    filebrowserImageUploadUrl : ‘./ckeditor/filemanager/index.html?type=Images’
    });

    And then I set this for the text area?

    Only thing that works with this setup is ckeditor itself (that was the easiest part), but not the filemanager …no site of the browse server button when I click the images/ button in the toolbar.

    Where am I going wrong with filemanager? (btw is there another way to get the filemanager files other than svn? It’s not really a familiar way for me to download files for an addon, i’m used to just a zip or something):

    Thanks in advance!
    Ben

  49. Ben Says:

    Umm, this forum is taking away script code. No wonder this has been so hard figuring out from other posts. lol

    ie. textarea was completely stripped from my last post as well as tags. Let me know if there’s somewhere else I can post this code i added

  50. Ben Says:

    Jason,

    Ok, i got the browse server button to work now. I added the script tags after the text area and that did it. But now I think some paths are off cuz the filemanager loads a 404. if my ckeditor filemanager is uploaded here:
    /admin/ckeditor/filemanager

    What paths would I set in the config files?

  51. Ben Says:

    Ok, and nevermind again. I got that to work too. It wasn’t a path issue, it was a .htaccess issue. The filemanager is working fine now, thanks.

  52. Ben Says:

    For anyone who has worked on this addon, you guys did an amazing job!

    Thanks!
    Ben

  53. J Bruni Says:

    Thanks a lot for this wonderful tool!

    A translation of the PHP connector language file to brazilian portuguese is available here:

    http://www.jbruni.com.br/filemanager_lang_pt-br.php

  54. Nick Says:

    Can filemanager be downloaded via an http url? My website is on a LAMP server but my test server is running Apache/Php on Windows XP.
    Thanks
    Nick

  55. Nick Says:

    I used TortoiseSVN for Windows to download the files.

    I have now installed Filemanager with CKEditor 3.0.1 with Filemanager located in a ‘filemanager’ sub-directory of ‘ckeditor’ and completed the following configuration settings using the Php connector:
    1. added an absolute path for $root in jqueryFileTree.php ( D:/www/somefolder/ )
    2. set lang = ‘php’ and fileRoot = ‘images/’ in filemanager.config.js
    3. added the following to ckeditor/config.js :
    config.filebrowserBrowseUrl = ‘ckeditor/filemanager/index.html’;
    config.filebrowserImageBrowseUrl = ‘ckeditor/filemanager/index.html?type=Images’;
    config.filebrowserFlashBrowseUrl = ‘ckeditor/filemanager/index.html?type=Flash’;
    config.filebrowserUploadUrl = ‘ckeditor/filemanager/connectors/php/filemanager.php’;
    config.filebrowserImageUploadUrl = ‘ckeditor/filemanager/connectors/php/filemanager.php?command=QuickUpload&type;=Images’;
    config.filebrowserFlashUploadUrl = ‘ckeditor/filemanager/connectors/php/filemanager.php?command=QuickUpload&type;=Flash’;

    When tested on Apache2 / Php5 running on Windows XP, the browse server button in the edit image dialog loads the Filemanager and directory names and image filenames display in the left pane, but when an image filename is clicked then a Windows style image not found square appears in the right pane with the buttons below; When the square is right clicked and properties selected, there are no properties available. Switching to list view just show the animated loading circle.

    Is this likely to be a path issue or an issue with running Apache on Windows?

    Thanks,
    Nick

  56. Nick Says:

    Now tested on a Linux server and same issues, with the addition of the ‘width’ javascript error mentioned by Ally on 18th November, infact I have exactly the same issues.

  57. simo Says:

    @Nick > Add $config['add_host'] = true; In filemanager.config.php and replace $root=’D:/www/somefolder/’ by $root = $_SERVER['DOCUMENT_ROOT']; in jqueryFileTree.php

    it should work…

  58. John Says:

    Hey all! Can ANYONE supply an asp.net / aspx connector? A few have posted that they have or are working on one. :)

    constructorx@hotmail.com

  59. Kolibot Says:

    It seems to be a nice project, indeed. I’ll maybe switch of File manager for this one, but i need an answer, is this file manager support multiple files import ?

    Thanks

  60. Bamford Says:

    Hello,

    I’ve only just discovered this project and it looks brilliant, but because most of my work is in Dot Net, could you please let me know if and when a ASPX connector will become available ?

  61. Riaan Says:

    @Kolibot: nope, is doesn’t support multiple file upload.

  62. Fernando Says:

    honestly i have no idea how to integrate this file manager to ckeditor (php version )

    if anyone make this integration and upload it , i would appreciate that .

    actulay if someone could do that and its possible

    god bless u

    thanks in advance

  63. XLogus Says:

    I made my own PHP Filemanager for CKEditor, you can download here http://www.miguelmanchego.com/2009/gestor-de-archivos-ckeditor/

  64. admin Says:

    @Bamford – Several people have told me they are working on .NET connectors, and we hope to add one to the project soon.

    @Fernando – The project does already include a PHP connector, and the included setup instructions should work for it. Please check out a copy and give it a try!

    - jason

  65. Nemesis Says:

    I tried with the filemanager and the connector and was able to run it without any difficulty in local server but when i uploaded it to the live server i encountered the errors. It’s almost 3 hours trying to solve it and I’m not able to solve it :(
    The directory structure is as follow:
    /var/www/html/mysite

    I wanted the fileroot to be userfiles so i put for fileroot = ‘/userfiles/’ in filemanager.config.js
    Put the $root = $_SERVER['DOCUMENT_ROOT'].’/'; in the jqueryFileTree.php and in config.php
    put the configurations:
    CKEDITOR.config.filebrowserBrowseUrl = CKEDITOR.basePath+’plugins/filemanager/index.html’;
    CKEDITOR.config.filebrowserImageBrowseUrl = CKEDITOR.basePath+’plugins/filemanager/index.html?type=Images’;
    CKEDITOR.config.filebrowserUploadUrl = CKEDITOR.basePath+’plugins/filemanager/index.html’;
    CKEDITOR.config.filebrowserImageUploadUrl = CKEDITOR.basePath+’plugins/filemanager/index.html?type=Images’;

    I’m gettign this error : syntax error
    var data =

    I’m not able to track it would somebody help me

  66. Nemesis Says:

    I found the solution json_encode() function was disabled in my server settings so i find out the alternative library to parse json object. And I replaced that function with the new one in the following two files
    connectors/php?filemanager.php and
    connectors/php?filemanager.class.php

    It worked like a charm after then :)

  67. Bamford Says:

    If anyone is using this with the ASP.Net connector, I discovered that the following change needs to be made.

    The file is jquery.filetree/connectors/jqueryFileTree.aspx

    Line number 19

    Change

    System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(dir);

    To

    System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Server.MapPath(dir));

  68. Bamford Says:

    Does anyone else get this ?

    As soon as you click the “Browse…” button to select a file to upload, it throws a Javascript error.

    Object doesn’t support this property or method.

    However, it only throws the error in Internet Explorer. It works fine in Firefox.

  69. vjousse Says:

    Hi,

    First of all, thanks for your work !

    What is the licence of the manager ?
    What about releasing an official version ? Or just a tag on the svn ?
    Checking out the trunk can be dangerous, if a commit broke the filemanager.

    What do you think of github ? It could be a great way to easily particpate to the project.

    Thanks in advance for your answers !

  70. Dale Says:

    @Riaan

    I am having a problem with your PHP connector: I’ve set up everything like you said in your post but the right pane of the file manager never shows the contents of a directory. The file tree works fine and when I click on an file in the file tree, I get its info in the right pane, including a preview of it, if it is an image. The problem seems to be in the getFolder() method for me. Every time the getFolder() method is called, it returns an empty result. Inside the getFolder method, all of the information seems to be stored in an array called ‘$array’ which is filled by looping through each of the items inside of the requested directory, but when I tell it to print the contents of the array each time it loops through, I always get empty results, no file handle errors, just nothing. I don’t understand, because there are plenty of items in the directories, and it seems to be able to open the handle, otherwise it should spit out an error and die, correct?

    Any thoughts?

    I am running locally on WAMP server PHP 5.2.6 and APACHE 2.2.8

    Thanks in advance for any help, hopefully I am missing something simple. Also, thanks everyone here for this file manager!

  71. Kevin Says:

    There seems to be a few bugs in the manager. When creating a new folder within the root, you cant put images into it until you close and re-open the manager, seems not to respond to a right click either. Its something to do with this line:

    $(‘#filetree > ul’).append(newNode);

    The tree also doesnt respond to the auth function and appears even if the auth is false. The grid list doesnt refresh when you remove a file. add some code to the top of scripts/jquery.filetree/connectors/jqueryFileTree.php

    Cosmetic suggestions would be to support proper thumbnails rather than the actual image made much smaller (large loading times).
    The ability to move files between folders would finish it off nicely!

  72. Nemesis Says:

    I wonder if anybody can fix the file upload error that appear when uploading the files from Upload tab unlike Image Info tab via Browse server button. Also how can one reload the filetree once the file has been uploaded?

  73. simo Says:

    hy guys,
    i’m currently thinking to add a localisation system on fileManager. Right now, messages are located in several files in any format (php, js, and other connectors format). To sum up, it’s a big mess!
    In my opinion, it should be contained in only one and UNIQUE file (using json format for example to be readable by any connectors).

    By the way, the use of the ‘lang’ named variable to define the connector seems to me inappropriate. Should be called ‘connector’ or (‘conn’).

    I’d like to share ideas on that system. Any suggestions?
    To finish, it seems we are some users ready to contribute but we terribly miss a shared platform.

  74. admin Says:

    Everyone,

    We really appreciate all of the feedback, interest, and contributions, and want you all to know that we are listening! We will be making changes so that it’s easier to get the project, ask for help, and contribute enhancements and fixes. Stay tuned!

    - Jason

  75. simo Says:

    Hi Jason,
    Busy task to manage a project ;-) )
    I did the localization system today (implemented with PHP connector).
    Have to be sure the code is clean, upload it and share the link!
    (Hope to do that soon)

  76. Jeppe R Says:

    Hello there,
    Are there a functional .net connector?
    If true then please post link or send to my mail: marci AT marci.dk

    Btw. really great concept, and a good job done :)
    – Though it should be easier to download than svn ;)

  77. simo Says:

    Changes are made. The package is available from the following URL : http://www.linea21.com/dl/dl.php?src=l10n_filemanager.tar.gz

    Changes are :
    - externalized message for localization support (EN, FR and mid NL are embedded).
    - new culture and autoload vars in /scripts/filemanager.config.js . culture is language var, autoload takes boolean value and tells the app to display default messages into index.html file or not (into the new one, I removed messages).
    - new $config['culture'] var into filemanager.config.php
    - /connectors/php/lang/* is not used anymore. All languages files are located in /scripts/languages/ and HAVE TO BE SHARED by all connectors!
    - PHP connector only is ready-to-use. Others have to be adapted to handle JSON language files.

    If any questions, just ask me.
    Modified files are also available on : http://gist.github.com/278816

    ++, simo

  78. DobleD Says:

    Hello.
    I was searching for something like this project (specially with the php connector. Is it “stable” ?). I need to test the file manager anyway…
    Meanwhile i created a translation to spanish for the PHP connector. How can i upload it to the svn? (i’m on Mac)
    thanks in advance.

  79. Adrian Says:

    hi

    i would like to user pgr-filemanager, but always i upload an image the image isn’t on the server

    does anybody know whats wrong? no error message, nothing

    i can copy images, that works fine and creating folders too

    thank you very much i need help

  80. Sijmen Ruwhof Says:

    Nice software, thanks for developing it and contributing it to the community!

    While implementing it, I found some bottlenecks which I’ll outline below

    There are a couple of critical problems with the latest version on SubVersion (as of 26 Januari 2010):
    – When the browser is configured for not sending the referrer HTTP header, the variable $_SERVER['HTTP_REFERER'] isn’t available in PHP. The current PHP connection is not programmed to deal with this kind of behaviour. Result is that the filetree is working, but no content will show up in the main window. Change file /connectors/php/filemanager.class.php line 262 to the following, for resolving the problem:
    $tmp = isSet($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ”;
    – The $root variable isn’t defined in /scripts/jquery.filetree/connectors/jqueryFileTree.php causing the script to stop working completely.

    And some major security vulnerabilities:
    – No authentication check is being performed in /scripts/jquery.filetree/connectors/jqueryFileTree.php giving away the contents of any given directory.
    – The path of the upload directory from the server is being sent from Javascript and is not being validated server side: it’s now possible to read and write *any file, anywhere* on the server.
    – Default configuration doesn’t restrict access (the auth() function always returns true by default).

  81. Niels Says:

    Looks promising guys, great effort!

    After just getting a copy and I’m now trying to get it to work, however for some reason it will not:
    It integrated well with ckeditor, no problem there. File Manager, although responsive, doesn’t seem to ‘do’ anything.

    Selected a file, clicked upload, confirmation. Then it starts the “loading” animation and never stops. No file, no error message either. The ‘tree’ stays blank too.

    Adding files and folders manually made no difference, none of them showed up in filemanager.

    Perhaps it’s related to the second ‘bottleneck’ Sijmen (fixed the first one) pointed out, or maybe I’m just doing something else completely wrong.

  82. Olav Verhoef Says:

    Hi there great work you have done.

    In CKeditor no problems, works ok. In FCKeditor, which for some other reasons I have to use, all works fine accept selecting an image. Both Chrome & Safari report:
    /js/filemanager/scripts/filemanager.js:107
    Uncaught TypeError: Cannot read property ’1′ of null

    Firebug in Firefox reports:
    results is null
    return results[1] || 0;

    Any help would be appreciated.

    Thanks & Regards,

    Olav Verhoef

  83. Bamford Says:

    Hi Olav,

    Why have you got to use FCKEditor instead of CKEditor ?

  84. admin Says:

    All,

    Please note the new resources linked in the sidebar above. You can now browse the source code repository via the web, download part or all of the project at any revision, and participate in discussion forums. I’ll be closing comments on this post shortly and would encourage everyone to use the forums instead from this point on.

    Thanks!
    Jason

  85. Olav Verhoef Says:

    Hi Bamford,

    I just have to use the old version of fckeditor. A lot of custom plugins, out client is using, are not working out of the box within the new ckeditor.

    Regards,

    Olav

  86. Jon Says:

    I finished a version of the filemanager that views and uploads to Amazon’s S3 written in php using Codeigniters framework. If anyone uses codeigniter I can send it to them. It would be pretty easy to vanilla it to regular php as well. jzumbrun@gmail.com

  87. Using a file manager with CKEditor. How to install and links on more information. | synergy Says:

    [...] Open File Manager Integrating FCK File Manager with CKEditor [...]

 

2245 Gilbert Ave. 300 | Cincinnati, OH 45206
©2010 Core Five Creative.