barryvdh / laravel-elfinder

elFinder bundle for Laravel
741 stars 171 forks source link

can't make it work #39

Closed t0n1zz closed 9 years ago

t0n1zz commented 9 years ago

so i tried to integrated it into laravel 4.2 and getting Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException

here is my setup: tinymce.init({ selector: "textarea", theme: "modern", skin: 'light', plugins: [ "advlist autolink lists link image charmap print preview hr anchor pagebreak", "searchreplace wordcount visualblocks visualchars code fullscreen", "insertdatetime media nonbreaking save table contextmenu directionality", "emoticons template paste textcolor colorpicker textpattern" ], toolbar1: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image", toolbar2: "print preview media | forecolor backcolor emoticons | fontselect fontsizeselect", image_advtab: true, templates: [ {title: 'Test template 1', content: 'Test 1'}, {title: 'Test template 2', content: 'Test 2'} ], file_browser_callback : elFinderBrowser });

function elFinderBrowser (field_name, url, type, win) {
  tinymce.activeEditor.windowManager.open({
    file: 'public_html/elfinder/tinymce',// use an absolute path!
    title: 'elFinder 2.0',
    width: 900,
    height: 450,
    resizable: 'yes'
  }, {
    setUrl: function (url) {
      win.document.getElementById(field_name).value = url;
    }
  });
  return false;
}

and i put my tinymce file in public_html/js

barryvdh commented 9 years ago

Did you register the routes?

t0n1zz commented 9 years ago

yes,i follow your instruction Route::get('elfinder/tinymce', 'Barryvdh\Elfinder\ElfinderController@showTinyMCE4');

barryvdh commented 9 years ago

file: 'public_html/elfinder/tinymce',// use an absolute path!

  1. That is not absolute.
  2. That is not correct, the public_html doesn't belong there.

it's something like url('elfinder/tinymce') or action('Barryvdh\Elfinder\ElfinderController@showTinyMCE4') or `/elfinder/tinymce'

t0n1zz commented 9 years ago

i change it into tinymce.activeEditor.windowManager.open({ file: 'elfinder/tinymce',// use an absolute path! title: 'elFinder 2.0', width: 900, height: 450, resizable: 'yes' }, { setUrl: function (url) { win.document.getElementById(field_name).value = url; } }); return false; }

but still getting the same error.... ><

barryvdh commented 9 years ago

What url is giving a 404? Did you also register the elfinder and elfinder/connector route? And you are still not using an absolute path.

t0n1zz commented 9 years ago

what do you mean by absolute path? Route::group(array('before' => 'auth'), function() { \Route::get('elfinder', 'Barryvdh\Elfinder\ElfinderController@showIndex'); \Route::any('elfinder/connector', 'Barryvdh\Elfinder\ElfinderController@showConnector'); }); Route::get('elfinder/tinymce', 'Barryvdh\Elfinder\ElfinderController@showTinyMCE4');

barryvdh commented 9 years ago

An absolute url, not a relative url.

But what url gives you the 404?

t0n1zz commented 9 years ago

view-source:http://localhost/bkculv/public_html/admins/artikel/1/elfinder/tinymce

still don't understand what you mean by absolute url... can a little example?

barryvdh commented 9 years ago

If you use the Laravel url helper, is should create an absolute url ('http://domain.com/elfinder/tinymce'). Now you are using relative urls, so the url is appended to the current url. You can use a leading / to make it relative the root, but that doesn't work for you because you have your app in a subfolder.

t0n1zz commented 9 years ago

so what should i insert into file:? i tried file: url('elfinder/tinymce') but when it not even showing file browser modal/windows/dialog

barryvdh commented 9 years ago

Then you probably haven't configured your paths for you Laravel app right. Sorry I can't really help you with this information, please try to understand how urls/routes work/are generated. And you better use a vhost or something so you don't have to have 'bkculv/public_html/' in your urls.

t0n1zz commented 9 years ago

well i'm newbie in laravel and still learning it... so maybe atleast show me some example? so i know where to look...

t0n1zz commented 9 years ago

okay, i manage to make it works ahahhaa ../../../elfinder/tinymce thank you for quick response

but after i tried to use it and upload images and put in into my article, when i want to show it in it parse wrong image file path... instead of http://localhost/bkculv/public_html/files/wallhaven-76098.jpg , it parse http://localhost/files/wallhaven-76098.jpg

what do i miss?

barryvdh commented 9 years ago

You should try to make a vhost configuration, so that you can use http://bkculv.local instead of http://localhost/bkculv/public_html/ What you have now will only cause more trouble.

t0n1zz commented 9 years ago

but is it will work if i publish my website/project into shared hosting?

barryvdh commented 9 years ago

On shared hosting you probably also have 1 domain for you app, not a subfolder, right?

t0n1zz commented 9 years ago

yes... i getting pretty confuse now hahahahha

t0n1zz commented 9 years ago

okay thank you, after reading about vhost i already get sense what is going on ahhahahaa... so once again thank you for your friendly and fast respond and also for your great component/plugin(it's called that right?)