Skip to content

Commit 79bdec2

Browse files
committed
added tinymce 5 support; latest blades; css file
1 parent bdf6ca1 commit 79bdec2

19 files changed

+882
-407
lines changed

changelog.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@
22

33
All notable changes to `FileManager` will be documented in this file.
44

5+
## Version 1.1.0 - 2020-04-23
6+
7+
### Added
8+
- TinyMCE 3 support;
9+
- Blade files from latest laravel-elfinder version to date (0.4.5);
10+
- CSS file in this package instead of Backpack/CRUD;
11+
12+
513
## Version 1.0.0 - 2020-03-21
614

715
### Added
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
/**
2+
* Laravel Backpack theme for elFinder.
3+
* Required jquery ui "smoothness" theme.
4+
*
5+
* @author Cristian Tabacitu [[email protected]]
6+
**/
7+
8+
body.elfinder { margin:0; }
9+
body.elfinder #elfinder.ui-widget-content { border:none; }
10+
11+
/* input textarea */
12+
.elfinder input,
13+
.elfinder textarea {
14+
color: #000;
15+
background-color: #FFF;
16+
}
17+
18+
/* dialogs */
19+
.std42-dialog, .std42-dialog .ui-widget-content { background-color:#ededed; background-image:none; background-clip: content-box; }
20+
21+
/* navbar */
22+
.elfinder .elfinder-navbar { background:#dde4eb; }
23+
.elfinder-navbar .ui-state-hover { color:#000; background-color:#edf1f4; border-color:#bdcbd8; }
24+
.elfinder-navbar-root.ui-state-active.ui-state-hover { color:white; background: #3875d7!important; }
25+
.elfinder-navbar .ui-state-active { background: #3875d7; border-color:#3875d7; color:#fff; }
26+
.elfinder-navbar .elfinder-droppable-active {background:#A7C6E5 !important;}
27+
/* disabled elfinder */
28+
.elfinder-disabled .elfinder-navbar .ui-state-active { background: #dadada; border-color:#aaa; color:#fff; }
29+
30+
31+
/* current directory */
32+
/* selected file in "icons" view */
33+
.elfinder-cwd-view-icons .elfinder-cwd-file .ui-state-hover { background:#ccc; }
34+
35+
/* list view*/
36+
.elfinder-cwd table thead td.ui-state-hover { background:#ddd; }
37+
.elfinder-cwd table tr:nth-child(odd) { background-color:#edf3fe; }
38+
.elfinder-cwd table tr {
39+
border: 1px solid transparent;
40+
border-top:1px solid #fff;
41+
}
42+
.elfinder-cwd .elfinder-droppable-active td { background:#A7C6E5 !important; }
43+
44+
45+
/* common selected background/color */
46+
.elfinder-cwd-view-icons .elfinder-cwd-file .elfinder-cwd-filename.ui-state-hover,
47+
.elfinder-cwd table td.ui-state-hover,
48+
.elfinder-button-menu .ui-state-hover { background: #3875d7; color:#fff;}
49+
/* disabled elfinder */
50+
.elfinder-disabled .elfinder-cwd-view-icons .elfinder-cwd-file .elfinder-cwd-filename.ui-state-hover,
51+
.elfinder-disabled .elfinder-cwd table td.ui-state-hover { background:#dadada;}
52+
53+
/* statusbar */
54+
.elfinder .elfinder-statusbar { color:#555; }
55+
.elfinder .elfinder-statusbar a { text-decoration:none; color:#555;}
56+
57+
58+
.std42-dialog .elfinder-help, .std42-dialog .elfinder-help .ui-widget-content { background:#fff;}
59+
60+
/* contextmenu */
61+
.elfinder-contextmenu .ui-state-hover { background: #3875d7; color:#fff; }
62+
.elfinder-contextmenu .ui-state-hover .elfinder-contextmenu-arrow { background-image:url('../img/arrows-active.png'); }
63+
64+
/* jquery-ui overwrites */
65+
.ui-widget-header {
66+
background: #cccccc;
67+
border: none;
68+
}
69+
70+
.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br {
71+
border-bottom-right-radius: 0;
72+
}
73+
.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl {
74+
border-bottom-left-radius: 0;
75+
}
76+
.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr {
77+
border-top-right-radius: 0;
78+
}
79+
.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl {
80+
border-top-left-radius: 0;
81+
}
82+
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {
83+
background: #dadada;
84+
}
85+
.elfinder-navbar-root .ui-state-hover {
86+
background: #3875d7!important;
87+
}

resources/views/ckeditor4.blade.php

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<!DOCTYPE html>
2+
<html lang="{{ app()->getLocale() }}">
3+
<head>
4+
5+
@include('vendor.elfinder.common_scripts')
6+
@include('vendor.elfinder.common_styles')
7+
8+
<!-- elFinder initialization (REQUIRED) -->
9+
<script type="text/javascript" charset="utf-8">
10+
// Helper function to get parameters from the query string.
11+
function getUrlParam(paramName) {
12+
var reParam = new RegExp('(?:[\?&]|&amp;)' + paramName + '=([^&]+)', 'i') ;
13+
var match = window.location.search.match(reParam) ;
14+
15+
return (match && match.length > 1) ? match[1] : '' ;
16+
}
17+
18+
$().ready(function() {
19+
var funcNum = getUrlParam('CKEditorFuncNum');
20+
21+
var elf = $('#elfinder').elfinder({
22+
// set your elFinder options here
23+
@if($locale)
24+
lang: '{{ $locale }}', // locale
25+
@endif
26+
customData: {
27+
_token: '{{ csrf_token() }}'
28+
},
29+
url: '{{ route("elfinder.connector") }}', // connector URL
30+
soundPath: '{{ asset($dir.'/sounds') }}',
31+
getFileCallback : function(file) {
32+
window.opener.CKEDITOR.tools.callFunction(funcNum, file.url);
33+
window.close();
34+
}
35+
}).elfinder('instance');
36+
});
37+
</script>
38+
</head>
39+
<body>
40+
41+
<!-- Element where elFinder will be created (REQUIRED) -->
42+
<div id="elfinder"></div>
43+
44+
</body>
45+
</html>

resources/views/ckeditor4.php

Lines changed: 58 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,70 +1,61 @@
11
<!DOCTYPE html>
2-
<html>
3-
<head>
4-
<meta charset="utf-8">
5-
<title>elFinder 2.0 - CKEditor</title>
6-
7-
<!-- jQuery and jQuery UI (REQUIRED) -->
8-
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" />
9-
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
10-
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
11-
12-
<!-- elFinder CSS (REQUIRED) -->
13-
<link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/elfinder.min.css') ?>">
14-
<!-- <link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/theme.css') ?>"> -->
15-
<link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/base/css/elfinder.backpack.theme.css') ?>">
16-
17-
<!-- elFinder JS (REQUIRED) -->
18-
<script src="<?= asset($dir.'/js/elfinder.min.js') ?>"></script>
19-
20-
<?php if ($locale) {
21-
?>
22-
<!-- elFinder translation (OPTIONAL) -->
23-
<script src="<?= asset($dir."/js/i18n/elfinder.$locale.js") ?>"></script>
24-
<?php
25-
} ?>
26-
27-
<!-- elFinder initialization (REQUIRED) -->
28-
<script type="text/javascript" charset="utf-8">
29-
// Helper function to get parameters from the query string.
30-
function getUrlParam(paramName) {
31-
var reParam = new RegExp('(?:[\?&]|&amp;)' + paramName + '=([^&]+)', 'i') ;
32-
var match = window.location.search.match(reParam) ;
33-
34-
return (match && match.length > 1) ? match[1] : '' ;
35-
}
36-
37-
$().ready(function() {
38-
var funcNum = getUrlParam('CKEditorFuncNum');
39-
40-
var elf = $('#elfinder').elfinder({
41-
// set your elFinder options here
42-
resizable: false,
43-
<?php if ($locale) {
44-
?>
45-
lang: '<?= $locale ?>', // locale
46-
<?php
47-
} ?>
48-
customData: {
49-
_token: '<?= csrf_token() ?>'
50-
},
51-
url: '<?= route('elfinder.connector') ?>', // connector URL
52-
getFileCallback : function(file) {
53-
window.opener.CKEDITOR.tools.callFunction(funcNum, file.url);
54-
window.close();
55-
}
56-
}).elfinder('instance');
57-
});
58-
$(window).resize(function(){
59-
var h = ($(window).height());
60-
if($('#elfinder').height() != h){
61-
$('#elfinder').height(h).resize();
2+
<html lang="<?= app()->getLocale() ?>">
3+
<head>
4+
<meta charset="utf-8">
5+
<title>elFinder 2.0</title>
6+
7+
<!-- jQuery and jQuery UI (REQUIRED) -->
8+
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" />
9+
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
10+
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
11+
12+
<!-- elFinder CSS (REQUIRED) -->
13+
<link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/elfinder.min.css') ?>">
14+
<link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/theme.css') ?>">
15+
16+
<!-- elFinder JS (REQUIRED) -->
17+
<script src="<?= asset($dir.'/js/elfinder.min.js') ?>"></script>
18+
19+
<?php if($locale){ ?>
20+
<!-- elFinder translation (OPTIONAL) -->
21+
<script src="<?= asset($dir."/js/i18n/elfinder.$locale.js") ?>"></script>
22+
<?php } ?>
23+
24+
<!-- elFinder initialization (REQUIRED) -->
25+
<script type="text/javascript" charset="utf-8">
26+
// Helper function to get parameters from the query string.
27+
function getUrlParam(paramName) {
28+
var reParam = new RegExp('(?:[\?&]|&amp;)' + paramName + '=([^&]+)', 'i') ;
29+
var match = window.location.search.match(reParam) ;
30+
31+
return (match && match.length > 1) ? match[1] : '' ;
6232
}
63-
});
64-
</script>
65-
</head>
66-
<body class="elfinder">
67-
<!-- Element where elFinder will be created (REQUIRED) -->
68-
<div id="elfinder"></div>
69-
</body>
33+
34+
$().ready(function() {
35+
var funcNum = getUrlParam('CKEditorFuncNum');
36+
37+
var elf = $('#elfinder').elfinder({
38+
// set your elFinder options here
39+
<?php if($locale){ ?>
40+
lang: '<?= $locale ?>', // locale
41+
<?php } ?>
42+
customData: {
43+
_token: '<?= csrf_token() ?>'
44+
},
45+
url: '<?= route("elfinder.connector") ?>', // connector URL
46+
soundPath: '<?= asset($dir.'/sounds') ?>',
47+
getFileCallback : function(file) {
48+
window.opener.CKEDITOR.tools.callFunction(funcNum, file.url);
49+
window.close();
50+
}
51+
}).elfinder('instance');
52+
});
53+
</script>
54+
</head>
55+
<body>
56+
57+
<!-- Element where elFinder will be created (REQUIRED) -->
58+
<div id="elfinder"></div>
59+
60+
</body>
7061
</html>
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<!-- jQuery and jQuery UI (REQUIRED) -->
2+
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" />
3+
@if (!isset ($jquery) || (isset($jquery) && $jquery == true))
4+
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
5+
@endif
6+
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
7+
8+
<!-- elFinder JS (REQUIRED) -->
9+
<script src="{{ asset($dir.'/js/elfinder.min.js') }}"></script>
10+
11+
@if($locale)
12+
<!-- elFinder translation (OPTIONAL) -->
13+
<script src="{{ asset($dir."/js/i18n/elfinder.$locale.js") }}"></script>
14+
@endif
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<meta charset="utf-8">
2+
<title>File Manager</title>
3+
4+
<!-- elFinder CSS (REQUIRED) -->
5+
<link rel="stylesheet" type="text/css" href="{{ asset($dir.'/css/elfinder.min.css') }}">
6+
{{-- <link rel="stylesheet" type="text/css" href="{{ asset($dir.'/css/theme.css') }}"> --}}
7+
<link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/filemanager/themes/Backpack/elfinder.backpack.theme.css') ?>">
8+
{{-- <link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/filemanager/themes/Material/css/theme.min.css') ?>"> --}}
9+
{{-- <link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/filemanager/themes/Material/css/theme-gray.min.css') ?>"> --}}
10+
{{-- <link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/filemanager/themes/Material/css/theme-light.min.css') ?>"> --}}

resources/views/elfinder.blade.php

Lines changed: 24 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,28 @@
11
@extends('backpack::layouts.top_left')
22

3+
34
@section('after_scripts')
4-
<!-- jQuery and jQuery UI (REQUIRED) -->
5-
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" />
6-
<!-- <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> -->
7-
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
8-
9-
<!-- elFinder CSS (REQUIRED) -->
10-
<link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/elfinder.min.css') ?>">
11-
<!-- <link rel="stylesheet" type="text/css" href="<?= asset($dir.'/css/theme.css') ?>"> -->
12-
<link rel="stylesheet" type="text/css" href="<?= asset('packages/backpack/base/css/elfinder.backpack.theme.css') ?>">
13-
14-
<!-- elFinder JS (REQUIRED) -->
15-
<script src="<?= asset($dir.'/js/elfinder.min.js') ?>"></script>
16-
17-
<?php if ($locale) { ?>
18-
<!-- elFinder translation (OPTIONAL) -->
19-
<script src="<?= asset($dir."/js/i18n/elfinder.$locale.js") ?>"></script>
20-
<?php } ?>
21-
22-
<!-- elFinder initialization (REQUIRED) -->
23-
<script type="text/javascript" charset="utf-8">
24-
// Documentation for client options:
25-
// https://github.com/Studio-42/elFinder/wiki/Client-configuration-options
26-
$().ready(function() {
27-
$('#elfinder').elfinder({
28-
// set your elFinder options here
29-
<?php if ($locale) { ?>
30-
lang: '<?= $locale ?>', // locale
31-
<?php } ?>
32-
customData: {
33-
_token: '<?= csrf_token() ?>'
34-
},
35-
url : '<?= route('elfinder.connector') ?>' // connector URL
5+
@include('vendor.elfinder.common_scripts')
6+
@include('vendor.elfinder.common_styles')
7+
8+
<!-- elFinder initialization (REQUIRED) -->
9+
<script type="text/javascript" charset="utf-8">
10+
// Documentation for client options:
11+
// https://github.com/Studio-42/elFinder/wiki/Client-configuration-options
12+
$().ready(function() {
13+
$('#elfinder').elfinder({
14+
// set your elFinder options here
15+
@if($locale)
16+
lang: '{{ $locale }}', // locale
17+
@endif
18+
customData: {
19+
_token: '{{ csrf_token() }}'
20+
},
21+
url : '{{ route("elfinder.connector") }}', // connector URL
22+
soundPath: '{{ asset($dir.'/sounds') }}'
23+
});
3624
});
37-
});
38-
</script>
25+
</script>
3926
@endsection
4027

4128
@php
@@ -53,7 +40,7 @@
5340

5441
@section('content')
5542

56-
<!-- Element where elFinder will be created (REQUIRED) -->
57-
<div id="elfinder"></div>
43+
<!-- Element where elFinder will be created (REQUIRED) -->
44+
<div id="elfinder"></div>
5845

59-
@endsection
46+
@endsection

0 commit comments

Comments
 (0)