]> BookStack Code Mirror - bookstack/blob - resources/views/pages/parts/form.blade.php
ebad2bd7261f7c2c2d6cdc0ee72c2ebc1faa6593
[bookstack] / resources / views / pages / parts / form.blade.php
1 <div component="page-editor" class="page-editor flex-fill flex"
2      option:page-editor:drafts-enabled="{{ $draftsEnabled ? 'true' : 'false' }}"
3      @if(config('services.drawio'))
4         drawio-url="{{ is_string(config('services.drawio')) ? config('services.drawio') : 'https://embed.diagrams.net/?embed=1&proto=json&spin=1' }}"
5      @endif
6      @if($model->name === trans('entities.pages_initial_name'))
7         option:page-editor:has-default-title="true"
8      @endif
9      option:page-editor:editor-type="{{ $editor }}"
10      option:page-editor:page-id="{{ $model->id ?? '0' }}"
11      option:page-editor:page-new-draft="{{ $isDraft ? 'true' : 'false' }}"
12      option:page-editor:draft-text="{{ ($isDraft || $isDraftRevision) ? trans('entities.pages_editing_draft') : trans('entities.pages_editing_page') }}"
13      option:page-editor:autosave-fail-text="{{ trans('errors.page_draft_autosave_fail') }}"
14      option:page-editor:editing-page-text="{{ trans('entities.pages_editing_page') }}"
15      option:page-editor:draft-discarded-text="{{ trans('entities.pages_draft_discarded') }}"
16      option:page-editor:set-changelog-text="{{ trans('entities.pages_edit_set_changelog') }}">
17
18     {{--Header Bar--}}
19     <div class="primary-background-light toolbar page-edit-toolbar">
20         <div class="grid third no-break v-center">
21
22             <div class="action-buttons text-left px-m py-xs">
23                 <a href="{{ $isDraft ? $page->getParent()->getUrl() : $page->getUrl() }}"
24                    class="text-button text-primary">@icon('back')<span class="hide-under-l">{{ trans('common.back') }}</span></a>
25             </div>
26
27             <div class="text-center px-m py-xs">
28                 <div component="dropdown"
29                      option:dropdown:move-menu="true"
30                      class="dropdown-container draft-display text {{ $draftsEnabled ? '' : 'hidden' }}">
31                     <button type="button" refs="dropdown@toggle" aria-haspopup="true" aria-expanded="false" title="{{ trans('entities.pages_edit_draft_options') }}" class="text-primary text-button"><span refs="page-editor@draftDisplay" class="faded-text"></span>&nbsp; @icon('more')</button>
32                     @icon('check-circle', ['class' => 'text-pos draft-notification svg-icon', 'refs' => 'page-editor@draftDisplayIcon'])
33                     <ul refs="dropdown@menu" class="dropdown-menu" role="menu">
34                         <li>
35                             <button refs="page-editor@saveDraft" type="button" class="text-pos">@icon('save'){{ trans('entities.pages_edit_save_draft') }}</button>
36                         </li>
37                         @if($isDraft)
38                         <li>
39                             <a href="{{ $model->getUrl('/delete') }}" class="text-neg">@icon('delete'){{ trans('entities.pages_edit_delete_draft') }}</a>
40                         </li>
41                         @endif
42                         <li refs="page-editor@discardDraftWrap" class="{{ $isDraft ? '' : 'hidden' }}">
43                             <button refs="page-editor@discardDraft" type="button" class="text-neg">@icon('cancel'){{ trans('entities.pages_edit_discard_draft') }}</button>
44                         </li>
45                         @if(userCan('editor-change'))
46                             <li>
47                                 <a href="{{ $model->getUrl($isDraft ? '' : '/edit') }}?editor={{ $editor === 'wysiwyg' ? 'markdown' : 'wysiwyg' }}">
48                                     @icon('swap-horizontal'){{ $editor === 'wysiwyg' ? trans('entities.pages_edit_switch_to_markdown') : trans('entities.pages_edit_switch_to_wysiwyg') }}
49                                 </a>
50                             </li>
51                         @endif
52                     </ul>
53                 </div>
54             </div>
55
56             <div class="action-buttons px-m py-xs">
57                 <div component="dropdown" dropdown-move-menu class="dropdown-container">
58                     <button refs="dropdown@toggle" type="button" aria-haspopup="true" aria-expanded="false" class="text-primary text-button">@icon('edit') <span refs="page-editor@changelogDisplay">{{ trans('entities.pages_edit_set_changelog') }}</span></button>
59                     <ul refs="dropdown@menu" class="wide dropdown-menu">
60                         <li class="px-l py-m">
61                             <p class="text-muted pb-s">{{ trans('entities.pages_edit_enter_changelog_desc') }}</p>
62                             <input refs="page-editor@changelogInput"
63                                    name="summary"
64                                    id="summary-input"
65                                    type="text"
66                                    placeholder="{{ trans('entities.pages_edit_enter_changelog') }}" />
67                         </li>
68                     </ul>
69                     <span>{{-- Prevents button jumping on menu show --}}</span>
70                 </div>
71
72                 <button type="submit" id="save-button" class="float-left text-primary text-button text-pos-hover hide-under-m">@icon('save')<span>{{ trans('entities.pages_save') }}</span></button>
73             </div>
74         </div>
75     </div>
76
77     {{--Title input--}}
78     <div class="title-input page-title clearfix">
79         <div refs="page-editor@titleContainer" class="input">
80             @include('form.text', ['name' => 'name', 'model' => $model, 'placeholder' => trans('entities.pages_title')])
81         </div>
82     </div>
83
84     {{--Editors--}}
85     <div class="edit-area flex-fill flex">
86
87         {{--WYSIWYG Editor--}}
88         @if($editor === 'wysiwyg')
89             @include('pages.parts.wysiwyg-editor', ['model' => $model])
90         @endif
91
92         {{--Markdown Editor--}}
93         @if($editor === 'markdown')
94             @include('pages.parts.markdown-editor', ['model' => $model])
95         @endif
96
97     </div>
98
99     <button type="submit"
100             id="save-button-mobile"
101             title="{{ trans('entities.pages_save') }}"
102             class="text-primary text-button hide-over-m page-save-mobile-button">@icon('save')</button>
103 </div>