]> BookStack Code Mirror - bookstack/blob - resources/views/pages/form.blade.php
Finished migrated from icon-font to SVG
[bookstack] / resources / views / pages / form.blade.php
1
2 <div class="page-editor flex-fill flex" id="page-editor"
3      drafts-enabled="{{ $draftsEnabled ? 'true' : 'false' }}"
4      drawio-enabled="{{ config('services.drawio') ? 'true' : 'false' }}"
5      editor-type="{{ setting('app-editor') }}"
6      page-id="{{ $model->id or 0 }}"
7      page-new-draft="{{ $model->draft or 0 }}"
8      page-update-draft="{{ $model->isDraft or 0 }}">
9
10     {{ csrf_field() }}
11
12     {{--Header Bar--}}
13     <div class="faded-small toolbar">
14         <div class="container fluid">
15             <div class="row">
16                 <div class="col-sm-4 faded">
17                     <div class="action-buttons text-left">
18                         <a href="{{ back()->getTargetUrl() }}" class="text-button text-primary">@icon('back'){{ trans('common.back') }}</a>
19                         <a onclick="$('body>header').slideToggle();" class="text-button text-primary">@icon('swap-vertical'){{ trans('entities.pages_edit_toggle_header') }}</a>
20                     </div>
21                 </div>
22                 <div class="col-sm-4 faded text-center">
23
24                     <div v-show="draftsEnabled" dropdown class="dropdown-container draft-display">
25                         <a dropdown-toggle class="text-primary text-button"><span class="faded-text" v-text="draftText"></span>&nbsp; @icon('more')</a>
26                         @icon('check-circle', ['class' => 'text-pos draft-notification svg-icon', ':class' => '{visible: draftUpdated}'])
27                         <ul>
28                             <li>
29                                 <a @click="saveDraft()" class="text-pos">@icon('save'){{ trans('entities.pages_edit_save_draft') }}</a>
30                             </li>
31                             <li v-if="isNewDraft">
32                                 <a href="{{ $model->getUrl('/delete') }}" class="text-neg">@icon('delete'){{ trans('entities.pages_edit_delete_draft') }}</a>
33                             </li>
34                             <li v-if="isUpdateDraft">
35                                 <a type="button" @click="discardDraft" class="text-neg">@icon('cancel'){{ trans('entities.pages_edit_discard_draft') }}</a>
36                             </li>
37                         </ul>
38                     </div>
39                 </div>
40                 <div class="col-sm-4 faded">
41                     <div class="action-buttons" v-cloak>
42                         <div dropdown class="dropdown-container">
43                             <a dropdown-toggle class="text-primary text-button">@icon('edit') <span v-text="changeSummaryShort"></span></a>
44                             <ul class="wide">
45                                 <li class="padded">
46                                     <p class="text-muted">{{ trans('entities.pages_edit_enter_changelog_desc') }}</p>
47                                     <input name="summary" id="summary-input" type="text" placeholder="{{ trans('entities.pages_edit_enter_changelog') }}" v-model="changeSummary" />
48                                 </li>
49                             </ul>
50                         </div>
51
52                         <button type="submit" id="save-button" class="text-button text-pos">@icon('save'){{ trans('entities.pages_save') }}</button>
53                     </div>
54                 </div>
55             </div>
56         </div>
57     </div>
58
59     {{--Title input--}}
60     <div class="title-input page-title clearfix" v-pre>
61         <div class="input">
62             @include('form/text', ['name' => 'name', 'placeholder' => trans('entities.pages_title')])
63         </div>
64     </div>
65
66     {{--Editors--}}
67     <div class="edit-area flex-fill flex">
68
69         {{--WYSIWYG Editor--}}
70         @if(setting('app-editor') === 'wysiwyg')
71             <div wysiwyg-editor class="flex-fill flex">
72                 <textarea id="html-editor"  name="html" rows="5" v-pre
73                     @if($errors->has('html')) class="neg" @endif>@if(isset($model) || old('html')){{htmlspecialchars( old('html') ? old('html') : $model->html)}}@endif</textarea>
74             </div>
75
76             @if($errors->has('html'))
77                 <div class="text-neg text-small">{{ $errors->first('html') }}</div>
78             @endif
79         @endif
80
81         {{--Markdown Editor--}}
82         @if(setting('app-editor') === 'markdown')
83             <div v-pre id="markdown-editor" markdown-editor class="flex-fill flex code-fill">
84
85                 <div class="markdown-editor-wrap">
86                     <div class="editor-toolbar">
87                         <span class="float left">{{ trans('entities.pages_md_editor') }}</span>
88                         <div class="float right buttons">
89                             @if(config('services.drawio'))
90                                 <button class="text-button" type="button" data-action="insertDrawing">@icon('drawing'){{ trans('entities.pages_md_insert_drawing') }}</button>
91                                 &nbsp;|&nbsp
92                             @endif
93                             <button class="text-button" type="button" data-action="insertImage">@icon('image'){{ trans('entities.pages_md_insert_image') }}</button>
94                             &nbsp;|&nbsp;
95                             <button class="text-button" type="button" data-action="insertLink">@icon('link'){{ trans('entities.pages_md_insert_link') }}</button>
96                         </div>
97                     </div>
98
99                     <div markdown-input class="flex flex-fill">
100                         <textarea  id="markdown-editor-input"  name="markdown" rows="5"
101                             @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>
102                     </div>
103
104                 </div>
105
106                 <div class="markdown-editor-wrap">
107                     <div class="editor-toolbar">
108                         <div class="">{{ trans('entities.pages_md_preview') }}</div>
109                     </div>
110                     <div class="markdown-display page-content">
111                     </div>
112                 </div>
113                 <input type="hidden" name="html"/>
114
115             </div>
116
117
118
119             @if($errors->has('markdown'))
120                 <div class="text-neg text-small">{{ $errors->first('markdown') }}</div>
121             @endif
122         @endif
123
124     </div>
125 </div>