PhuongNamCorpsIntern / workspace

Phuong Nam Corps Internship Workspace
3 stars 8 forks source link

Dùng elFinder trong Sifoni để thao tác với file và folder #9

Open huynhtrucquyen0812 opened 8 years ago

huynhtrucquyen0812 commented 8 years ago

Link repository: https://github.com/huynhtrucquyen0812/elfinder-for-sifoni

Mục đích

  1. Tích hợp File Browser vào CKEditor
  2. File Browse cho form cơ bản

    Cài đặt

    • Kiểm tra file php.ini đã bỏ comment dòng extension=php_fileinfo.dll
    • Thêm vào require trong composer.json đoạn code:
"studio-42/elfinder": "2.x-dev",
 "barryvdh/elfinder-flysystem-driver": "~0.1”

rồi chạy lệnh composer update -vvv

'/finder/browse' => 'Admin\FinderController:browse:admin_finder_browse',
'/finder/connector' => 'Admin\FinderController:connector:admin_finder_connector’,
<textarea name="content" id="content" rows="10" cols="60"></textarea>
<script>
        CKEDITOR.replace('content', {
            filebrowserBrowseUrl : "{{ url('admin_finder_browse') }}"
        });
</script>
  1. Bằng config.js trong ckeditor/
CKEDITOR.editorConfig = function( config ) {
    // Config Sth
    config.filebrowserBrowseUrl = '/admin/finder/browse';
};

II. File Browser trong form

<img id="img" src="/assets/admin/image/no-image.png"/> <!-- để hiển thị image được chọn -->
<input id="imgURL" type="text" name="image"/> <!-- để lưu URL của image -->
<button class="btn-browse-img" type="button">Choose</button> <!-- để browse image -->

<script>
    $(document).ready(function() {
        window.admin_finder_browse = "{{ url('admin_finder_browse') }}";
    });
    $(document).ready(function() {
    $('.btn-browse-img').on('click', function() {
            var txt = $(this);
            var fileupload = function(file) {
                $('#img').attr('src', file.url);
                $('#imgURL').attr('value', file.url)
            };
            window.upload_handle = fileupload;
            var w = window.open(window.admin_finder_browse, "", "width=600, height=400");
            w.onbeforeunload = function(){
                window.upload_handle = false;
            };
        });
    });
</script>

--> Về AuthedController trong FinderController: https://github.com/PhuongNamCorpsIntern/workspace/issues/3

DONE~!!! (╯°□°)╯︵ ┻━┻

khanhicetea commented 8 years ago

Mục 2 chỉ là form Create chứ nếu Update thì fải show hình hiện tại ra chứ

huynhtrucquyen0812 commented 8 years ago

Vì là cách lấy dữ liệu khác nhau nên ko biết để làm sao, nếu update thì mấy bạn tự để hình zô nha :grinning:

khanhicetea commented 8 years ago
<input id="imgURL" type="text"/> <!-- để lưu URL của image -->

ko co name sao ma save form :confused: