All Projects → Kwaadpepper → laravel-responsivefilemanager

Kwaadpepper / laravel-responsivefilemanager

Licence: MIT license
Laravel Responsive File Manager integration

Programming Languages

PHP
23972 projects - #3 most used programming language
javascript
184084 projects - #8 most used programming language
Less
1899 projects

Projects that are alternatives of or similar to laravel-responsivefilemanager

Richfilemanager
An open-source file manager. Up-to-date for PHP, Java, ASHX, ASP, NodeJs & Python 3 Flask. Contributions are welcome!
Stars: ✭ 820 (+6207.69%)
Mutual labels:  filemanager, tinymce, ckeditor
html-integrations
The official JavaScript library for MathType, the leading formula editor and equation writer for the web by Wiris
Stars: ✭ 36 (+176.92%)
Mutual labels:  tinymce, ckeditor
Laravel Filemanager
Media gallery with CKEditor, TinyMCE and Summernote support. Built on Laravel file system.
Stars: ✭ 1,688 (+12884.62%)
Mutual labels:  tinymce, ckeditor
Laravel Filemanager Example 5.3
Demo integration for laravel-filemanager (https://github.com/UniSharp/laravel-filemanager).
Stars: ✭ 100 (+669.23%)
Mutual labels:  tinymce, ckeditor
Fmelfinderbundle
📁 ElFinderBundle provides ElFinder integration with TinyMCE, CKEditor, Summernote editors
Stars: ✭ 231 (+1676.92%)
Mutual labels:  tinymce, ckeditor
php-file-manager
PHP File Manager
Stars: ✭ 44 (+238.46%)
Mutual labels:  filemanager, ftp
Xbackbone
A lightweight file manager with full ShareX, Screencloud support and more
Stars: ✭ 359 (+2661.54%)
Mutual labels:  filemanager, ftp
Filestash
🦄 A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...
Stars: ✭ 5,231 (+40138.46%)
Mutual labels:  filemanager, ftp
Fileprovider
FileManager replacement for Local, iCloud and Remote (WebDAV/FTP/Dropbox/OneDrive) files -- Swift
Stars: ✭ 724 (+5469.23%)
Mutual labels:  filemanager, ftp
EOSFTPServer
A project to create a complete, standard compliant, multi-user, Objective-C (Mac OS X / iOS) FTP server.
Stars: ✭ 35 (+169.23%)
Mutual labels:  ftp
publish-sftp
One-line command to quickly publish resources to a specified server
Stars: ✭ 41 (+215.38%)
Mutual labels:  ftp
expo-file-manager
A file manager app made with React Native & Expo
Stars: ✭ 110 (+746.15%)
Mutual labels:  filemanager
po-auto-translation
translate PO files automatically for FREE using google translate
Stars: ✭ 33 (+153.85%)
Mutual labels:  multilanguage
iOS-HTMLTextEditor
A simple implementation of an HTML Editor using CKEditor in a web view.
Stars: ✭ 57 (+338.46%)
Mutual labels:  ckeditor
yadisk
Download file from Yandex.Disk through share link
Stars: ✭ 33 (+153.85%)
Mutual labels:  filemanager
laravel-startkit
Laravel Admin Dashboard, Admin Template with Frontend Template, for scalable Laravel projects. It is to save your time when You start with new scalable Laravel projects with many features Bootstrap, cooreui, infyom admin Generator, roles and permissions, translatable models, spatie media and much more
Stars: ✭ 55 (+323.08%)
Mutual labels:  multilanguage
kafka-connect-fs
Kafka Connect FileSystem Connector
Stars: ✭ 107 (+723.08%)
Mutual labels:  ftp
RB-libcURL
A Realbasic and Xojo binding to libcurl
Stars: ✭ 19 (+46.15%)
Mutual labels:  ftp
vue-tinymce-editor
This a component provides use of tinymce for vue developers
Stars: ✭ 221 (+1600%)
Mutual labels:  tinymce
sketch-crowdin
Connect your Sketch and Crowdin projects together
Stars: ✭ 35 (+169.23%)
Mutual labels:  multilanguage

This repo is not maintenaned anymore please consider using something else like https://github.com/UniSharp/laravel-filemanager

Laravel-ResponsiveFileManager

GitHub issues GitHub license GitHub license Maintenance GitHub tag

This software includes a modified version of Responsive File Manager see official website

Responsive File Manager (RFM) is licenced under CC BY-NC 3.0 which means software can't be redistributed for a commercial use.

CC BY-NC 3.0

If you wan't to use it for comercial purpose take a look on the author (Alberto Peripolli ) website

This repo is under MIT Licence except parts where antoher licence is mentioned in file.

Corrections are made to RFM in order to

  • Prevent collisions
  • Fix small errors
  • Adapt to Laravel

The Laravel plugin code part here is under MIT Licence.

The RFM author delivers a commercial version of his code (a modified include.js). You will need to modify this file if you use CSRF check on your laravel app by adding _token: jQuery('meta[name="csrf-token"]').attr('content') on ajax calls. You can use www.diffchecker.com to check modifications you will have to apply to your include.commercial.js file. I can't deliver myself a licence to use RFM for commercial purpose

If you have some corrections, recommendations or anything else to say please let me know. Don't hesitate to make PR if you done something cool you wan't to share

Read Responsive File Manager Documentation


How to Install ?

#1

Install in your project

composer require kwaadpepper/laravel-responsivefilemanager

Now there is a new configuration file rfm.php

Install in config/app.php

'providers' => [
        /*
         * Laravel Framework Service Providers...
         */
        ...
        // Responsive File Manager
        Kwaadpepper\ResponsiveFileManager\FileManagerServiceProvider::class
],

In app/Http/Kernel.php need to use StartSession, can also use and is recommended CSRF Token

protected $middlewareGroups = [
    ...
    'web' => [
        ...
        \Illuminate\Session\Middleware\StartSession::class,
        // Responsive File Manager supports CSRF Token usage
        \App\Http\Middleware\VerifyCsrfToken::class
    ]
    ...
];

then do

php artisan vendor:publish --provider="Kwaadpepper\ResponsiveFileManager\FileManagerServiceProvider"

Generate private key for url identification

php artisan rfm:generate

All configs included to work out of the box. Files are meant to be stored in public folder.

Don't forget to create upload dir

mkdir -p public/uploads/files/

#2

Use as StandAlone

Use helpers to write filemanager url

<a href="@filemanager_get_resource(dialog.php)?field_id=imgField&lang=en_EN&akey=@filemanager_get_key()" value="Files">Open RFM</a>

see USE AS STAND-ALONE FILE MANAGER in Responsible File Manager Doc

tip: Seems to support Bootstrap Modal


Include in TinyMCE or CKEDITOR

Include JS

  • For CKEditor

Replace #MYTEXTAREAJS with your textarea input

<script src='{{ asset('/vendor/unisharp/laravel-ckeditor/ckeditor.js') }}'></script>
<script>
    $(document).ready(function() {
        if($("#MYTEXTAREAID").length) {
            CKEDITOR.replace( 'postBody', {
                filebrowserBrowseUrl : '@filemanager_get_resource(dialog.php)?akey=@filemanager_get_key()&type=2&editor=ckeditor&fldr=',
                filebrowserUploadUrl : '@filemanager_get_resource(dialog.php)?akey=@filemanager_get_key()&type=2&editor=ckeditor&fldr=',
                filebrowserImageBrowseUrl : '@filemanager_get_resource(dialog.php)?akey=@filemanager_get_key()&type=1&editor=ckeditor&fldr=',
                language : '<?php App::getLocale() ?>'
            });
        }
    })
</script>
  • For TinyMCE

with tinymce parameters

$(document).ready(() => {
    $('textarea').first().tinymce({
        script_url : '/tinymce/tinymce.min.js',
        width: 680,height: 300,
        plugins: [
            "advlist autolink link image lists charmap print preview hr anchor pagebreak",
            "searchreplace wordcount visualblocks visualchars insertdatetime media nonbreaking",
            "table contextmenu directionality emoticons paste textcolor filemanager code"
    ],
    toolbar1: "undo redo | bold italic underline | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | styleselect",
    toolbar2: "| responsivefilemanager | link unlink anchor | image media | forecolor backcolor  | print preview code ",
    image_advtab: true ,
    filemanager_access_key: '@filemanager_get_key()',
    filemanager_sort_by: '',
    filemanager_descending: '',
    filemanager_subfolder: '',
    filemanager_crossdomain: '',
    external_filemanager_path: '@filemanager_get_resource(dialog.php)',
    filemanager_title:"Responsive Filemanager" ,
    external_plugins: { "filemanager" : "/vendor/responsivefilemanager/plugin.min.js"}
    });
});

To make private folder use .htaccess with Deny from all


Configuration

Language

This package has multiple languages support, it is still incomplete. please contribute if you have the language concerned skills.

  1. Url get parameter ($_GET)
  2. RF.language session var (User selected languages in drop list)
  3. config.php (rfm.php) default_language
  4. User prefered language (HTTP headers)
  5. Your Laravel app default language
Available Languages
az_AZ      Azərbaycan dili
bg_BG      български език
ca         Català, valencià
cs         čeština, český jazyk
da         Dansk
de         Deutsch
el_GR      ελληνικά
en_EN      English
es         Español
fa         فارسی
fi_FI      Finnish
fr_FR      Français
he_IL      Hebrew (Israel)
hr         Hrvatski jezik
hu_HU      Magyar
id         Bahasa Indonesia
it         Italiano
ja         日本
lt         Lietuvių kalba
mn_MN      монгол
nb_NO      Norsk bokmål
nn_NO      Norsk nynorsk
nl         Nederlands, Vlaams
pl         Język polski, polszczyzna
pt_BR      Português(Brazil,
pt_PT      Português
ro         Română
ru         Pусский язык
sk         Slovenčina
sl         Slovenski jezik
sv_SE      Svenska
th_TH      ไทย
tr_TR      Türkçe
uk_UA      Yкраїнська мова
vi         Tiếng Việt
zh_CN      中文 (Zhōngwén), 汉语, 漢語

FTP

To come


TODO :

  • private key setup
  • more corrections on JS side
  • more corrections on languages
  • Test with tinyMCE
  • Include commercial support
  • Test and debug FTP fonctionnality (Alpha Still need debug some functionallities)
  • TODO: cache FTP thumbnails for preview (images only)
  • MultiUser and Auth Support
  • compile assets
  • publish package
  • Rewrite routes to be cleaner (eg : ajax_calls/{action}/{subaction})
  • separe properly View from logic ( ex: dialog.php OMG <(o_O)>)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].