]> BookStack Code Mirror - bookstack/blobdiff - resources/views/pages/form.blade.php
Add zh_TW Locales.
[bookstack] / resources / views / pages / form.blade.php
index 871344f639625aaa8239018d466d290203d697fe..58afdfca7260e53569d92f845b4986cb43123f81 100644 (file)
 
-<div class="col-md-3 page-menu">
-    <h4>You are editing a page</h4>
-    <button type="submit" class="button pos">Save Page</button>
-</div>
-
-<div class="col-md-9 page-style editor">
+<div class="page-editor flex-fill flex" id="page-editor"
+     drafts-enabled="{{ $draftsEnabled ? 'true' : 'false' }}"
+     drawio-enabled="{{ config('services.drawio') ? 'true' : 'false' }}"
+     editor-type="{{ setting('app-editor') }}"
+     page-id="{{ $model->id or 0 }}"
+     page-new-draft="{{ $model->draft or 0 }}"
+     page-update-draft="{{ $model->isDraft or 0 }}">
 
     {{ csrf_field() }}
-    <div class="title-input page-title">
-        @include('form/text', ['name' => 'name', 'placeholder' => 'Enter Page Title'])
+
+    {{--Header Bar--}}
+    <div class="faded-small toolbar">
+        <div class="container fluid">
+            <div class="row">
+                <div class="col-sm-4 faded">
+                    <div class="action-buttons text-left">
+                        <a href="{{ back()->getTargetUrl() }}" class="text-button text-primary">@icon('back'){{ trans('common.back') }}</a>
+                        <a onclick="$('body>header').slideToggle();" class="text-button text-primary">@icon('swap-vertical'){{ trans('entities.pages_edit_toggle_header') }}</a>
+                    </div>
+                </div>
+                <div class="col-sm-4 faded text-center">
+
+                    <div v-show="draftsEnabled" dropdown class="dropdown-container draft-display">
+                        <a dropdown-toggle class="text-primary text-button"><span class="faded-text" v-text="draftText"></span>&nbsp; @icon('more')</a>
+                        @icon('check-circle', ['class' => 'text-pos draft-notification svg-icon', ':class' => '{visible: draftUpdated}'])
+                        <ul>
+                            <li>
+                                <a @click="saveDraft()" class="text-pos">@icon('save'){{ trans('entities.pages_edit_save_draft') }}</a>
+                            </li>
+                            <li v-if="isNewDraft">
+                                <a href="{{ $model->getUrl('/delete') }}" class="text-neg">@icon('delete'){{ trans('entities.pages_edit_delete_draft') }}</a>
+                            </li>
+                            <li v-if="isUpdateDraft">
+                                <a type="button" @click="discardDraft" class="text-neg">@icon('cancel'){{ trans('entities.pages_edit_discard_draft') }}</a>
+                            </li>
+                        </ul>
+                    </div>
+                </div>
+                <div class="col-sm-4 faded">
+                    <div class="action-buttons" v-cloak>
+                        <div dropdown class="dropdown-container">
+                            <a dropdown-toggle class="text-primary text-button">@icon('edit') <span v-text="changeSummaryShort"></span></a>
+                            <ul class="wide">
+                                <li class="padded">
+                                    <p class="text-muted">{{ trans('entities.pages_edit_enter_changelog_desc') }}</p>
+                                    <input name="summary" id="summary-input" type="text" placeholder="{{ trans('entities.pages_edit_enter_changelog') }}" v-model="changeSummary" />
+                                </li>
+                            </ul>
+                        </div>
+
+                        <button type="submit" id="save-button" class="text-button text-pos">@icon('save'){{ trans('entities.pages_save') }}</button>
+                    </div>
+                </div>
+            </div>
+        </div>
     </div>
-    <div class="edit-area">
-        @include('form/textarea', ['name' => 'html'])
+
+    {{--Title input--}}
+    <div class="title-input page-title clearfix" v-pre>
+        <div class="input">
+            @include('form/text', ['name' => 'name', 'placeholder' => trans('entities.pages_title')])
+        </div>
     </div>
 
-</div>
-
-
-
-
-
-<script>
-    $(function() {
-        //ImageManager.show('#image-manager');
-
-        tinymce.init({
-            selector: '.edit-area textarea',
-            content_css: '/css/app.css',
-            body_class: 'container',
-            relative_urls: false,
-            height: 600,
-            plugins: "image table textcolor paste link imagetools",
-            toolbar: "undo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | table image link | fontsizeselect full",
-            content_style: "body {padding-left: 15px !important; padding-right: 15px !important; margin:0!important}",
-            file_browser_callback: function(field_name, url, type, win) {
-                ImageManager.show('#image-manager', function(image) {
-                    win.document.getElementById(field_name).value = image.url;
-                    if ("createEvent" in document) {
-                        var evt = document.createEvent("HTMLEvents");
-                        evt.initEvent("change", false, true);
-                        win.document.getElementById(field_name).dispatchEvent(evt);
-                    } else {
-                        win.document.getElementById(field_name).fireEvent("onchange");
-                    }
-                });
-            },
-            setup: function(editor) {
-                editor.addButton('full', {
-                    text: 'Expand',
-                    icon: false,
-                    onclick: function() {
-                        var container = $(editor.getContainer()).toggleClass('fullscreen');
-                    }
-                });
-            }
-        });
-
-
-
-    });
-</script>
\ No newline at end of file
+    {{--Editors--}}
+    <div class="edit-area flex-fill flex">
+
+        {{--WYSIWYG Editor--}}
+        @if(setting('app-editor') === 'wysiwyg')
+            <div wysiwyg-editor class="flex-fill flex">
+                <textarea id="html-editor"  name="html" rows="5" v-pre
+                    @if($errors->has('html')) class="neg" @endif>@if(isset($model) || old('html')){{htmlspecialchars( old('html') ? old('html') : $model->html)}}@endif</textarea>
+            </div>
+
+            @if($errors->has('html'))
+                <div class="text-neg text-small">{{ $errors->first('html') }}</div>
+            @endif
+        @endif
+
+        {{--Markdown Editor--}}
+        @if(setting('app-editor') === 'markdown')
+            <div v-pre id="markdown-editor" markdown-editor class="flex-fill flex code-fill">
+
+                <div class="markdown-editor-wrap">
+                    <div class="editor-toolbar">
+                        <span class="float left">{{ trans('entities.pages_md_editor') }}</span>
+                        <div class="float right buttons">
+                            @if(config('services.drawio'))
+                                <button class="text-button" type="button" data-action="insertDrawing">@icon('drawing'){{ trans('entities.pages_md_insert_drawing') }}</button>
+                                &nbsp;|&nbsp
+                            @endif
+                            <button class="text-button" type="button" data-action="insertImage">@icon('image'){{ trans('entities.pages_md_insert_image') }}</button>
+                            &nbsp;|&nbsp;
+                            <button class="text-button" type="button" data-action="insertLink">@icon('link'){{ trans('entities.pages_md_insert_link') }}</button>
+                        </div>
+                    </div>
+
+                    <div markdown-input class="flex flex-fill">
+                        <textarea  id="markdown-editor-input"  name="markdown" rows="5"
+                            @if($errors->has('markdown')) class="neg" @endif>@if(isset($model) || old('markdown')){{htmlspecialchars( old('markdown') ? old('markdown') : ($model->markdown === '' ? $model->html : $model->markdown))}}@endif</textarea>
+                    </div>
+
+                </div>
+
+                <div class="markdown-editor-wrap">
+                    <div class="editor-toolbar">
+                        <div class="">{{ trans('entities.pages_md_preview') }}</div>
+                    </div>
+                    <div class="markdown-display page-content">
+                    </div>
+                </div>
+                <input type="hidden" name="html"/>
+
+            </div>
+
+
+
+            @if($errors->has('markdown'))
+                <div class="text-neg text-small">{{ $errors->first('markdown') }}</div>
+            @endif
+        @endif
+
+    </div>
+</div>
\ No newline at end of file