Giter Club home page Giter Club logo

responsivefilemanager's Introduction

Responsive FileManager for TinyMCE and CKEditor

Build Status

Responsive FileManager is a free open-source file manager made with the jQuery library, CSS3, PHP and HTML5 that offers a nice and elegant way to upload and insert files, images and videos. You can use it as external plugin for TinyMCE version 4.x. or CKEditor and you can also use it as a stand-alone file manager to manage and select files. The script automatically creates thumbnails of images for the preview list and can create also external thumbnails to use in your cms or site. It can be configured for automatic resizing of uploaded images or to automatically limit the size. You can personalize the configuration for each folder. You can set a subfolder as the root and change the configuration for each user, page or FileManager call. Is compatible with multi-user mode and you can edit images with aviary editor, sorting files.

DEMO AND DOCUMENTATION: http://www.responsivefilemanager.com/

PRODUCTION VERSION DOWNLOAD: https://github.com/trippo/ResponsiveFilemanager/releases

Released under Creative Commons Attribution-NonCommercial 3.0 Unported License.

Creator: [email protected] - tr1pp0

Server Requirements

Localization

  • AZE [Elshad Agayev]
  • BGR [Stanislav Panev]
  • BRA [paulomanrique]
  • CAT [Manel Peña]
  • CHN [Vu Doan Thang]
  • CRO
  • CZE [jlusticky]
  • DAN [Morten Hesselberg Grove]
  • ENG
  • ESP [Roberto Santamaria]
  • FRA [Mathieu Ducharme]
  • GER [Oliver Beta]
  • GRC [vkouvelis]
  • Hebrew [sagie212]
  • HUN [Novak Szabolcs]
  • IND [urayogi]
  • ITA
  • JPN [Vu Doan Thang]
  • LTU [Tomas Norkūnas]
  • MON [Tumenzul Batjargal]
  • NLD [Martijn van der Made]
  • NOR [Pål Schroeder]
  • Persian [web2web esf ir]
  • POL [Michell Hoduń]
  • POR [Sérgio Lima]
  • RUS [vasromand]
  • SLO [Roman Šovčík]
  • SVN [Peter Benko]
  • SWE [Jon Sten]
  • TUR [Ahmed Faruk Bora]
  • UKR [Sergey]
  • VNM [Chiendv]

Development

In order to work on assets, you need to install Node.js and yarn, then cd to your folder and run these commands:

  1. Install node packages according to package.js (directory node_modules)

    yarn install
    
  2. Compile assets

    yarn build
    

Gulp use laravel-elixir

Credits

responsivefilemanager's People

Contributors

amin3d avatar baho avatar bohacf avatar chiendv avatar davodavodavo3 avatar e404r avatar flamsens avatar gijsdev avatar gwjwin avatar hannesoberreiter avatar kocsismate avatar mayrk avatar mikaykun avatar mikeyhun avatar mklkj avatar mpryvkin avatar msaulohenrique avatar norkunas avatar offthewall avatar orangoy avatar phavel avatar sagie212 avatar slaweknaczynski avatar slimtim avatar starx avatar stilliard avatar sysix avatar trippo avatar uguraktas avatar vkouvelis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

responsivefilemanager's Issues

Some improvments

First, thanks You for write awesome TinyMCE extension!
I have some questions about this:
I try integrate You plugin into Symfony2 application with but this is no possible in current version:

  1. you should add option to disable create thumbnail or change thumb location.
  2. in plugin.min.js:
file: tinyMCE.baseURL + '/plugins/filemanager/dialog.php?type=' + types + '&editor=' + editor.id + '&lang=' +

we should option to change plugin directory - in my situation i dont have plugins in TinyMce plugin directory.

permission thums dir truble

I can't know why of this thing. i've recorded it.

http://cl.ly/3E1V2E1C0g3b

any ideas?

scrivo in italiano questa cosa così mi spiego meglio:
Ho notato una cosa che quell'errore non mi viene dato se non uso il $_SESSION["subfolder"].
quindi se entro da /admin/uploads/ tutto ok, quel messaggio non appare.
mentre se setto la sessione ed entro da /admin/uploads/p/1000/1/ mi da quell'errore. se creo una dir, inizia a funzionare

filemanager version: 7.3.0
permission: 777 on all folders/subfolders
owner: nobody

Possibility to configure using TinyMCE init parameters

Would be great if language for example could be taken from tinyMCE configuration :)

Same could be made for folders configuration, because most time you have access in init to your app config, but passing it to another file cannot be made easily..

latest version create new dir problem

Creat a new dir goes wrong.
When creating for example a dir 'test' then in the root of the filemanager dir I get this output

dapachehtdocstinyuploadstest as a map name instead in my upload dir upload/test

The uploaded file exceeds the max size allowed

With version 9.3.4, it shows message "The uploaded file exceeds the max size allowed" only after I add codes :
if ( * 1024 * 1024 < file.size){
done("");
}
else if ($.inArray(extension, allowed_ext) > -1) {
done();
}

to dialog.php

I'm wondering if it's a bug or I'm not using it properly

Upload and create new folder doesn't work

Hello thank you for your awesome work. I have successfully installed the filemanager but the upload and the creation of a new folder doesn't work.
I've tried to investigate and creating manualy a new file is working a putting manualy files in folders is working too. but for example when I'm trying to rename a folder I ot this : The folder is already existing.
I i've checked the XHR and for the create folder action i got this : ../../../thumbs/hello cannot be found.

but everything I put manualy in the folder is seen by the filemanager.

I go the same issue with absolute path in the config file and i've setted 755 permission to my folders.

What can I do ? thank you.

Parallel Sessions

Hello, first thank you for the cute file manager, we made a donation to you with a great pleasure 👍
But we have this problem, when I open the filemanager and start uploading files, my colleague can not upload.. is it possible for the filemanager to work with parallel sessions? Or the problem may be somewhere else. All the file permissions are set to 777.

Thanks

.config file

Remember that you cannot make such a file name in windows same as .htaccess

These filenames can only be made on a non windows computer
Perhaps simple use config.php ?

The Upload URL

First, sory for my bad English.

I want to integrate this Responsive file manager into my application. Where I can change upload URL?

Thanks

Cross-site scripting vulnerabilities

Seems like there are some xss vulnerabilities..

filemanager/dialog.php?popup="><img%20src="http://www.thiscovers.com/covers-images/download/happy-coding-quote.jpg
shows a nice image... ;-)

I think there are some more variables which should be sanitized before printet to the browser.

There should be a function that memorizes the link to the last chosen image.

For example, in folder upload/2013, there are subfolder 01, 02, 03, ...10.
After choosing an image in subfolder 03, inserting it into the editor, we want to insert another image in this folder. It's more convenient if the there is a function that saves the last the link to the last chosen image. By that way, we can immediately choose another image in stead of going back to the folder 03 and repeating those actions.
And if we want to back to root folder, we simply click Home icon.

IE RegExp is not defined

In IE (10,9) when click on select image - oke the following error occurs

SCRIPT5009: RegExp is is not defined
jquery.1.9.1.min.js, regel 4 teken 6328

Not resolved paths in Windows

In Windows file paths used back slashes "" (not forward such as unix - "/"), because of this file manager is not working.

The problem is in several files, as an example in dialog.php
2013-08-09_11-18_responsivefilemanager-filemana

strpos ($ _GET ['subfolder'], '. /') — return always false

May be use constant DIRECTORY_SEPARATOR?

insertfile icon hidden

I do not have the icon for inserting files in tinyMCE ?

$('.mceEditor').tinymce({
        // Location of TinyMCE script
        script_url : 'tinymce/tinymce.min.js',
        theme: "modern",
        relative_urls : false,
        entity_encoding : "raw",
        plugins: [
            'advlist autolink lists link image charmap print preview anchor',
            'searchreplace visualblocks code fullscreen',
            'insertdatetime media table contextmenu paste textcolor template insertfile
        ],
        toolbar1: 'bold italic underline strikethrough | alignleft aligncenter alignright alignjustify 
        | formatselect | forecolor backcolor',
        toolbar2: 'cut copy paste | searchreplace | bullist numlist | outdent indent blockquote |
        undo redo | insertfile image media | link unlink anchor | code | preview',
        toolbar3: 'table | hr removeformat | fullscreen | visualblocks | inserttime',
        menubar: false,
        toolbar_items_size: 'small',
        image_advtab: true ,
        external_filemanager_path: 'filemanager/',
        filemanager_title:"Responsive Filemanager" ,
        external_plugins: {
            "filemanager" : 'filemanager/plugin.min.js'
        },
        schema: "html5",
        end_container_on_empty_block: false
    });

image upload dynamic resize or not

I think that sometimes you want to upload an image which you don't want to be resized.
Perhaps a check button resize or not in the upload field ?
See picture
resize

Base upload

I am new to this and really like it at first glance, but when trying to upload for the first time I did not know what to do next after adding a file to the drop zone. After just waiting for while (trying to figure out what to do next), a green icon appeared over the file, so it seemed there was something happening in the background one just don't see. I'd suggest to add some text there or something to make this more clear.

Define config variables 'on the fly'

uploading a config.php file into every possible upload directory is quite a headache. It makes more sense to be able to pass these config variables to dialog.php like we do with fldr (GET parameter).

the only temporary fix I can see for this is the utilis a session variable instead.

Only download button is working

Hi,

I have some problems with buttons in filemanager, dialog is showing up but buttons like upload, create folder, filters, didnt work. Only download item button is working.

Image inside upload folder are showing up, but cant do it anything, perms:775.

Do you know whats wrong?

Undelete folders configuration

As like $hidden_folders variable in config file which will hide some folders, I think it is also important to disable deleting any folder we specify.
Example case is when we create subfolder named users/ contain multiuser folders. We want admin can access from root. But we have to make sure from accident deletion so users/ folder must be prevent for deletion.

trigger the "change" event

After applying image(include.js line 463, sometimes it's not enough to just modify the value of certain field. How about add this line:

$( target).trigger( "change" );

So, we can catch the event from outside of the dialog and do more things. Or something like that, am pretty sure there's a better solution.

Parse error when uploading

[Wed Aug 07 13:20:55 2013] [error] PHP Parse error: syntax error, unexpected '}' in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\upload.php on line 25

Just remove the } and all will be good

php notices

a lot of notices in php. Perhaps set with an isset ?

[Wed Aug 07 13:15:47 2013] [error] PHP Notice: Undefined index: view in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 156
[Wed Aug 07 13:15:59 2013] [error] PHP Notice: Undefined index: view in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 156
[Wed Aug 07 13:17:40 2013] [error] PHP Notice: Undefined index: fldr in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 155
[Wed Aug 07 13:17:40 2013] [error] PHP Notice: Undefined index: view in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 156
[Wed Aug 07 13:18:31 2013] [error] PHP Notice: Undefined index: fldr in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 155
[Wed Aug 07 13:18:31 2013] [error] PHP Notice: Undefined index: view in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 156
[Wed Aug 07 13:20:49 2013] [error] PHP Notice: Undefined index: fldr in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 155
[Wed Aug 07 13:20:49 2013] [error] PHP Notice: Undefined index: view in D:\Apache\htdocs\tiny\tinymce\plugins\filemanager\dialog.php on line 156

Mine can't work!

I did it according to the instruction,but when i click upload file button,it can't work.It just download dialog.php.Can you help me?

Issue With Uploads - No Files Saving To Server

Hello,
I'm having some issues getting the images to save to the drive, I wonder if I am doing something wrong or there is a way to debug this?

The plugin sits here: /public_html/cms/app/webroot/js/tinymce/plugins/filemanager

I'm trying to set it up so the uploads go here: /public_html/cms/app/webroot/files/cms

I have these settings in the config file:

$base_url="http://domain.com/cms/";  // base url of site. If you prefer relative urls leave empty
$upload_dir = 'app/webroot/files/cms/'; // path from base_url to base of upload folder
$current_path = '../../../files/cms/'; // relative path from filemanager folder to upload folder

Now when I started working this out I would get athe error for the plugin saying the root folder doesn't exist so I keep playing with the paths and now I don't get this error but I still cannot get it to upload the images, everything looks like it works, I get the preview as the image is uploading and a green tick once it's complete then I go back to the files list and the image isn't there. It's not on the server either. I'm wondering if there is a way to debug this and work out what's happening? The tumbs folder has the right permissions.

Thanks

Adding new functionalities. Got any ideas?

Hi there people.

I'm planning to add new functionalities to this great file manager.

Next update:

  • More bugfix
  • Update to bootstrap 3 (and all components)

Might push out:

  • Figure out a new way of storing lang. vars in the runtime rather than in hidden fields
  • Custom upload options (when uploading files make a new tab where you could specify custom options for the upload session like custom image sizing, thumb creation etc.)

Distant future:

  • Multiple file selection/operation
  • Directory tree view (for fast navigation)

Done:

  • cut/copy/paste
  • drag&drop files/folders
  • code cleanup
  • modify $_SESSION so there will be no conflicts when used in big projects
  • more feedback in a few places
  • custom upload sprites for every lang.
  • File permissions
  • Change language dynamically
  • edit/create/view text based files

If you have any more idea or you think something is missing from RF just post a comment here and will try to include it.

File Picker Browse Server

Thanks For your great work.
I've tried to use ResponsiveFilemanager as filepicker browser, but i didn't get it.
i've no clue for this.
can you give help for this?
sorry for my bad english.

File upload in new subdir doesn't work

If making a new folder 'test' file upload failed

Also it is better to do use the same function to make the dirs valid names (same function as the files)

example: 'test dir' should became 'test_dir'

css hover list images

In IE 9/10 when hovering over an image description in listview the text collapse above the box view.
I tried to find a fix but couldn't find it that quickly

At least it is in this part

.no-touch .cs-style-2 figure:hover .box:not(.no-effect),
.cs-style-2 figure.cs-hover .box:not(.no-effect) {
-webkit-box-shadow: 0px 0px 4px 0px rgba(1, 1, 1, 0.5);
box-shadow: 0px 0px 4px 0px rgba(1, 1, 1, 0.5);
-webkit-transform: translateY(-26px);
-moz-transform: translateY(-26px);
-ms-transform: translateY(-26px);
transform: translateY(-26px);
}
2013-08-24_101147

File operations like copy and move

Hello, are you planning to add file operations like copy, move, rename etc. This will bring ResponsiveManager to the next, full featured file manager level.

Actually, we're looking file manager for our CMS and I possible can contribute JS part of this operations. Can you estimate the complexity of this task?

js error delete file

Click on delete file (tested with IE)

SCRIPT5007: Object expected
include.js, regel 277 teken 6

window[function_name] (container,name);

dropzone spritemap.png i18n

I noticed "spritemap_hu_HU.png" and "spritemap @ 2x_hu_HU.png" files inside "img" directory but apparently they are not connected to the hungarian language, because "spritemap.png" in hard-coded in dopzone.css.

A possible solution is to create css files for different languages to overwrite background images containing texts. Also I don't know the font name used in spritemap.png, maybe it supports english only...

wrong method call

dialog.php, line 615:
rename_file($file_path,fix_filename($filename,$transliteration));
there is a paramter missing according to include/utils.php

don't know what impact this has, just what my IDE says..

Files is not going to upload which are more than 2 mb

Hi
I did a setup the ResponsiveFilemanager into my webserver located http://filesystem.fuzonmedia.com/ResponsiveFilemanager-master/filemanager/dialog.php .

The upload features is working fine for file size less than 2mb but not more than 2mb those it is showing a green check after upload . I am using basic upload method . I did not altered the $MaxSizeUpload=100; //Mb variable value .

Can you please guide me why it is not working for me ? any idea ?

Thanks
Nil

allowed_extension bypass upload.php

Hey,

it seems the filemanager/upload.php script doesn't check allowed_extensions properly.

The following php scripts can successfully uploaded:

  • pictest.php.jpeg
  • doctest.php.doc
  • etc.

vuln. code in upload.php line 37 - 39:

//---SNIP
$info=pathinfo($_FILES['file']['name']);
if(in_array(fix_strtolower($info['extension']), $ext)){
$tempFile = $_FILES['file']['tmp_name'];
//---SNIP

It seems pathinfo retrieves only the last extension of given filename.

additional Info:

  • RESPONSIVE filemanager v.9.3.3
  • config.php :
    $ext_* arrays:
    • $ext_img = array('jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg'); //Images
    • $ext_file = array('doc', 'docx','rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv','html','xhtml','psd','sql','log','fla','xml','ade','adp','mdb','accdb','ppt','pptx','odt','ots','ott','odb','odg','otp','otg','odf','ods','odp','css','ai'); //Files
    • $ext_video = array('mov', 'mpeg', 'mp4', 'avi', 'mpg','wma',"flv","webm"); //Video
    • $ext_music = array('mp3', 'm4a', 'ac3', 'aiff', 'mid','ogg','wav'); //Audio
    • $ext_misc = array('zip', 'rar','gz','tar','iso','dmg'); //Archives

tested with:

  • Mozilla Firefox Win/Linux
  • Chrome Win/Linux
  • PHP Version : 5.2.14 / 5.3.x

Integration with standard "image" plugin raises exception

Setup: RFM 8.01
TinyMCE 4.0b3

Scenario: User clicks on the "image" button (created by the standard TinyMCE image plugin), and attempts to select the image using ResponsiveFileManager:

select

The file manager opens correctly, but attempting to select any of the images does nothing, but instead results in an uncaught typeexception in file include.js

exception

Slashes in path

editor

When you insert a file path contains a mixed combination of slashes. Because of this link for Windows get broken (not open in browsers).

permission problems after 7.1.1 upgrade

after upgrade to 7.1.1 i've this message. I've subfolder into $_SESSION["subfolder"]

The path is not writable. Please check your permissions.

i've tried to make an echo, and directory is ok.

echo $root . $cur_dir;

Incorrect image URL

When I click image to paste it in the editor, the URL is for some reason relative, like '../upload/images' . But on the server "upload" folder is in the root dir - the URL must be /upload/images/...

What might be the reason? I thought it might be the incorrect $current_path , but if I remove first "../", no images are displayed in File manager.

tooltips images falling off

The tooltips on the most left images are not readable (like download)
Perhaps an z-index or possible to autoadjust the tooltips left or right align

By the way I didn't say it before but this is a great job you did.

Still IE 9/10 problems hover over filenames

Still some small hover problems in IE 9 and 10

When hovering over a filename in dialog.php the div class="box"-h4-a at's a few pixels at the bottom of this div. (some flickering)

When removing ,:after,*:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box} this is solved but I know this is used by bootstrap

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.