ckeditor for html markup

This commit is contained in:
Arno Kaimbacher 2019-04-16 14:35:16 +02:00
parent 8735a2bbd4
commit 2fd9222f8a
22 changed files with 1384 additions and 1659 deletions

78
composer.lock generated
View File

@ -1759,16 +1759,16 @@
},
{
"name": "symfony/console",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "24206aff3efe6962593297e57ef697ebb220e384"
"reference": "e2840bb38bddad7a0feaf85931e38fdcffdb2f81"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/24206aff3efe6962593297e57ef697ebb220e384",
"reference": "24206aff3efe6962593297e57ef697ebb220e384",
"url": "https://api.github.com/repos/symfony/console/zipball/e2840bb38bddad7a0feaf85931e38fdcffdb2f81",
"reference": "e2840bb38bddad7a0feaf85931e38fdcffdb2f81",
"shasum": ""
},
"require": {
@ -1827,7 +1827,7 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
"time": "2019-04-01T07:32:59+00:00"
"time": "2019-04-08T14:23:48+00:00"
},
{
"name": "symfony/contracts",
@ -1899,7 +1899,7 @@
},
{
"name": "symfony/css-selector",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
@ -1952,16 +1952,16 @@
},
{
"name": "symfony/debug",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
"reference": "43ce8ab34c734dcc8a4af576cb86711daab964c5"
"reference": "2d279b6bb1d582dd5740d4d3251ae8c18812ed37"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/debug/zipball/43ce8ab34c734dcc8a4af576cb86711daab964c5",
"reference": "43ce8ab34c734dcc8a4af576cb86711daab964c5",
"url": "https://api.github.com/repos/symfony/debug/zipball/2d279b6bb1d582dd5740d4d3251ae8c18812ed37",
"reference": "2d279b6bb1d582dd5740d4d3251ae8c18812ed37",
"shasum": ""
},
"require": {
@ -2004,11 +2004,11 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
"time": "2019-03-10T17:09:50+00:00"
"time": "2019-04-11T11:27:41+00:00"
},
{
"name": "symfony/event-dispatcher",
"version": "v3.4.24",
"version": "v3.4.25",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
@ -2071,16 +2071,16 @@
},
{
"name": "symfony/finder",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "267b7002c1b70ea80db0833c3afe05f0fbde580a"
"reference": "e45135658bd6c14b61850bf131c4f09a55133f69"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/267b7002c1b70ea80db0833c3afe05f0fbde580a",
"reference": "267b7002c1b70ea80db0833c3afe05f0fbde580a",
"url": "https://api.github.com/repos/symfony/finder/zipball/e45135658bd6c14b61850bf131c4f09a55133f69",
"reference": "e45135658bd6c14b61850bf131c4f09a55133f69",
"shasum": ""
},
"require": {
@ -2116,11 +2116,11 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
"time": "2019-02-23T15:42:05+00:00"
"time": "2019-04-06T13:51:08+00:00"
},
{
"name": "symfony/http-foundation",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
@ -2554,16 +2554,16 @@
},
{
"name": "symfony/process",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "1e6cbb41dadcaf29e0db034d6ad0d039a9df06e6"
"reference": "8cf39fb4ccff793340c258ee7760fd40bfe745fe"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/1e6cbb41dadcaf29e0db034d6ad0d039a9df06e6",
"reference": "1e6cbb41dadcaf29e0db034d6ad0d039a9df06e6",
"url": "https://api.github.com/repos/symfony/process/zipball/8cf39fb4ccff793340c258ee7760fd40bfe745fe",
"reference": "8cf39fb4ccff793340c258ee7760fd40bfe745fe",
"shasum": ""
},
"require": {
@ -2599,20 +2599,20 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
"time": "2019-03-10T20:07:02+00:00"
"time": "2019-04-10T16:20:36+00:00"
},
{
"name": "symfony/routing",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
"reference": "319f600c1ea0f981f6bdc2f042cfc1690957c0e0"
"reference": "b9f16550d76897ab0a86c198f8008c6578a5068f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/routing/zipball/319f600c1ea0f981f6bdc2f042cfc1690957c0e0",
"reference": "319f600c1ea0f981f6bdc2f042cfc1690957c0e0",
"url": "https://api.github.com/repos/symfony/routing/zipball/b9f16550d76897ab0a86c198f8008c6578a5068f",
"reference": "b9f16550d76897ab0a86c198f8008c6578a5068f",
"shasum": ""
},
"require": {
@ -2675,20 +2675,20 @@
"uri",
"url"
],
"time": "2019-03-30T15:58:42+00:00"
"time": "2019-04-03T13:26:22+00:00"
},
{
"name": "symfony/translation",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
"reference": "e46933cc31b68f51f7fc5470fb55550407520f56"
"reference": "46c0dede1f925383d13dc783857be2c41efd0b24"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/translation/zipball/e46933cc31b68f51f7fc5470fb55550407520f56",
"reference": "e46933cc31b68f51f7fc5470fb55550407520f56",
"url": "https://api.github.com/repos/symfony/translation/zipball/46c0dede1f925383d13dc783857be2c41efd0b24",
"reference": "46c0dede1f925383d13dc783857be2c41efd0b24",
"shasum": ""
},
"require": {
@ -2710,7 +2710,9 @@
"symfony/console": "~3.4|~4.0",
"symfony/dependency-injection": "~3.4|~4.0",
"symfony/finder": "~2.8|~3.0|~4.0",
"symfony/http-kernel": "~3.4|~4.0",
"symfony/intl": "~3.4|~4.0",
"symfony/var-dumper": "~3.4|~4.0",
"symfony/yaml": "~3.4|~4.0"
},
"suggest": {
@ -2748,20 +2750,20 @@
],
"description": "Symfony Translation Component",
"homepage": "https://symfony.com",
"time": "2019-04-01T14:13:08+00:00"
"time": "2019-04-10T16:20:36+00:00"
},
{
"name": "symfony/var-dumper",
"version": "v4.2.5",
"version": "v4.2.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
"reference": "9f87189ac10b42edf7fb8edc846f1937c6d157cf"
"reference": "f42850fa32b8d7a35a75510810f6ef597674be74"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/9f87189ac10b42edf7fb8edc846f1937c6d157cf",
"reference": "9f87189ac10b42edf7fb8edc846f1937c6d157cf",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/f42850fa32b8d7a35a75510810f6ef597674be74",
"reference": "f42850fa32b8d7a35a75510810f6ef597674be74",
"shasum": ""
},
"require": {
@ -2824,7 +2826,7 @@
"debug",
"dump"
],
"time": "2019-02-23T15:17:42+00:00"
"time": "2019-04-11T11:27:41+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",

2842
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -25,6 +25,7 @@
"vuetable-2": "^1.7.5"
},
"dependencies": {
"@ckeditor/ckeditor5-build-classic": "^12.1.0",
"datatables.net": "^1.10.19",
"datatables.net-buttons": "^1.5.4"
}

1
public/backend/ckeditor.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -961,6 +961,7 @@ textarea.large, input.large {
[v-cloak] > * { display:none; }
[v-cloak]::before { content: "loading..."; }
.help {
display: block;
font-size: 0.75rem;

View File

@ -0,0 +1 @@
<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M14.958 9.367l-2.189 1.837a.75.75 0 0 0 .965 1.149l3.788-3.18a.747.747 0 0 0 .21-.284.75.75 0 0 0-.17-.945L13.77 4.762a.75.75 0 1 0-.964 1.15l2.331 1.955H6.22A.75.75 0 0 0 6 7.9a4 4 0 1 0 1.477 7.718l-.344-1.489A2.5 2.5 0 1 1 6.039 9.4l-.008-.032h8.927z"/></svg>

After

Width:  |  Height:  |  Size: 331 B

View File

@ -0,0 +1 @@
<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M5.042 9.367l2.189 1.837a.75.75 0 0 1-.965 1.149l-3.788-3.18a.747.747 0 0 1-.21-.284.75.75 0 0 1 .17-.945L6.23 4.762a.75.75 0 1 1 .964 1.15L4.863 7.866h8.917A.75.75 0 0 1 14 7.9a4 4 0 1 1-1.477 7.718l.344-1.489a2.5 2.5 0 1 0 1.094-4.73l.008-.032H5.042z"/></svg>

After

Width:  |  Height:  |  Size: 330 B

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,5 @@
{
"/backend/ckeditor.js": "/backend/ckeditor.js",
"/backend/publish/approveDataset.js": "/backend/publish/approveDataset.js",
"/backend/publish/datasetPublish.js": "/backend/publish/datasetPublish.js",
"/backend/publish/releaseDataset.js": "/backend/publish/releaseDataset.js",

37
resources/assets/js/ckeditor.js vendored Normal file
View File

@ -0,0 +1,37 @@
// import Vue from 'vue';
// import CKEditor from '@ckeditor/ckeditor5-vue';
import ClassicEditor from '@ckeditor/ckeditor5-build-classic';
// import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials';
// const app = new Vue({
// name: 'app',
// components: {
// // Use the <ckeditor> component in this view.
// ckeditor: CKEditor.component
// },
// props: ['desc_markup'],
// data() {
// return {
// editor: ClassicEditor,
// //desc_markup: '<p>Content of the editor.</p>',
// editorConfig: {
// // The configuration of the editor.
// }
// };
// }
// });
var allEditors = document.querySelectorAll('.ckeditor');
for (var i = 0; i < allEditors.length; ++i) {
ClassicEditor
.create(allEditors[i], {
toolbar: ['heading', '|', 'bold', 'italic', 'link', 'bulletedList', 'numberedList', 'blockQuote']
})
.then(editor => {
console.log(editor);
})
.catch(error => {
console.error(error);
});
}

View File

@ -1,4 +1,4 @@
<template lang="html">
<template>
<div>
<div id="map">
</div>

View File

@ -1,5 +1,5 @@
// https://alligator.io/vuejs/vue-modal-component/
<template lang="html">
<template>
<div class="modal-backdrop">
<div class="popup">
<div class="fm_overlay" >

View File

@ -29,8 +29,10 @@
</div>
<div class="pure-u-1 pure-u-md-1-2 pure-div">
{!! Form::label('desc_markup', 'Beschreibung als Markup') !!} {!! Form::textarea('desc_markup', null, ['class' => 'pure-u-23-24',
{!! Form::label('desc_markup', 'Beschreibung als Markup') !!}
{!! Form::textarea('desc_markup', null, ['class' => 'pure-u-23-24 ckeditor',
'size' => '70x6']) !!}
{{-- <ckeditor :editor="editor" v-bind:desc_markup='{{ $license->desc_markup }}' :config="editorConfig"></ckeditor> --}}
</div>
<div class="pure-u-1 pure-u-md-1-2 pure-div">

View File

@ -30,18 +30,14 @@
<script type="text/javascript">
// Backend.Pages.init();
</script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.js"></script>
{{-- <script src="https://cloud.tinymce.com/5/tinymce.min.js"></script> --}}
<script>
{{-- <link href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.js"></script> --}}
{{-- <script>
$(document).ready(function() {
$('#desc_markup').summernote();
// tinymce.init({
// selector: "#desc_markup",
// plugins: "code",
// // toolbar: "code",
// menubar: "tools"
// });
});
</script>
</script> --}}
<script type="text/javascript" src="{{ asset('backend/ckeditor.js') }}"></script>
@endsection

View File

@ -57,7 +57,7 @@
{!! Form::label('en_description', trans('validation.attributes.backend.pages.description'), ['class' => 'col-lg-2 control-label
required']) !!}
<div class="col-lg-10">
{!! Form::textarea('en_description', $page->translate('en')->description, ['class' => 'form-control description', 'placeholder' => trans('validation.attributes.backend.pages.description')])
{!! Form::textarea('en_description', $page->translate('en')->description, ['class' => 'form-control description ckeditor', 'placeholder' => trans('validation.attributes.backend.pages.description')])
!!}
</div>
</div>
@ -76,7 +76,7 @@
{!! Form::label('de_description', trans('validation.attributes.backend.pages.description'), ['class' => 'col-lg-2 control-label
required']) !!}
<div class="col-lg-10">
{!! Form::textarea('de_description', $page->translate('de')->description, ['class' => 'form-control description', 'placeholder' => trans('validation.attributes.backend.pages.description')])
{!! Form::textarea('de_description', $page->translate('de')->description, ['class' => 'form-control description ckeditor', 'placeholder' => trans('validation.attributes.backend.pages.description')])
!!}
</div>
</div>
@ -136,24 +136,13 @@ input[type="radio"], .tab-pane { display: none; }
@endsection
@section("after-scripts")
<script type="text/javascript">
// Backend.Pages.init();
</script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.10/summernote-lite.js"></script>
<script type="text/javascript" src="{{ asset('backend/ckeditor.js') }}"></script>
<script>
$(document).ready(function() {
// $('#description').summernote();
$('.description').summernote({
height: "300px",
callbacks: {
// onImageUpload: function(files, editor, welEditable) {
// app.sendFile(files[0], editor, welEditable);
// }
}
});
document.getElementById("english-option").checked = true;
});
// var $englishForm = $('#english-form');
// var $germanForm = $('#german-form');
@ -172,7 +161,7 @@ input[type="radio"], .tab-pane { display: none; }
// $germanForm.toggleClass('hidden');
// });
});
</script>
@endsection

View File

@ -19,6 +19,7 @@ mix.js('resources/assets/js/datasetPublish.js', 'public/backend/publish')
.js('resources/assets/js/lib.js', 'public/js')
.js('resources/assets/js/releaseDataset.js', 'public/backend/publish')
.js('resources/assets/js/approveDataset.js', 'public/backend/publish')
.js('resources/assets/js/ckeditor.js', 'public/backend/')
.scripts([
'node_modules/datatables.net/js/jquery.dataTables.js',
'node_modules/datatables.net-buttons/js/dataTables.buttons.js',