Dan Brown

Extracted text from page views & standardised breadcrumbs

...@@ -320,6 +320,9 @@ ul.pagination { ...@@ -320,6 +320,9 @@ ul.pagination {
320 font-size: 0.75em; 320 font-size: 0.75em;
321 margin-top: $-xs; 321 margin-top: $-xs;
322 } 322 }
323 + .text-muted p.text-muted {
324 + margin-top: 0;
325 + }
323 .page.draft .text-page { 326 .page.draft .text-page {
324 color: $color-page-draft; 327 color: $color-page-draft;
325 } 328 }
......
...@@ -109,6 +109,9 @@ em, i, .italic { ...@@ -109,6 +109,9 @@ em, i, .italic {
109 small, p.small, span.small, .text-small { 109 small, p.small, span.small, .text-small {
110 font-size: 0.8em; 110 font-size: 0.8em;
111 color: lighten($text-dark, 20%); 111 color: lighten($text-dark, 20%);
112 + small, p.small, span.small, .text-small {
113 + font-size: 1em;
114 + }
112 } 115 }
113 116
114 sup, .superscript { 117 sup, .superscript {
......
...@@ -6,7 +6,9 @@ return [ ...@@ -6,7 +6,9 @@ return [
6 */ 6 */
7 'cancel' => 'Cancel', 7 'cancel' => 'Cancel',
8 'confirm' => 'Confirm', 8 'confirm' => 'Confirm',
9 - 9 + 'back' => 'Back',
10 + 'save' => 'Save',
11 + 'continue' => 'Continue',
10 12
11 /** 13 /**
12 * Form Labels 14 * Form Labels
...@@ -23,4 +25,10 @@ return [ ...@@ -23,4 +25,10 @@ return [
23 'create' => 'Create', 25 'create' => 'Create',
24 'update' => 'Update', 26 'update' => 'Update',
25 'delete' => 'Delete', 27 'delete' => 'Delete',
28 +
29 +
30 + /**
31 + * Misc
32 + */
33 + 'deleted_user' => 'Deleted User',
26 ]; 34 ];
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -13,6 +13,7 @@ return [ ...@@ -13,6 +13,7 @@ return [
13 'sort' => 'Sort', 13 'sort' => 'Sort',
14 'move' => 'Move', 14 'move' => 'Move',
15 'delete' => 'Delete', 15 'delete' => 'Delete',
16 + 'revisions' => 'Revisions',
16 'meta_created' => 'Created :timeLength', 17 'meta_created' => 'Created :timeLength',
17 'meta_created_name' => 'Created :timeLength by :user', 18 'meta_created_name' => 'Created :timeLength by :user',
18 'meta_updated' => 'Updated :timeLength', 19 'meta_updated' => 'Updated :timeLength',
...@@ -56,6 +57,9 @@ return [ ...@@ -56,6 +57,9 @@ return [
56 'books_permissions_active' => 'Book Permissions Active', 57 'books_permissions_active' => 'Book Permissions Active',
57 'books_search_this' => 'Search this book', 58 'books_search_this' => 'Search this book',
58 'books_navigation' => 'Book Navigation', 59 'books_navigation' => 'Book Navigation',
60 + 'books_sort' => 'Sort Book Contents',
61 + 'books_sort_show_other' => 'Show Other Books',
62 + 'books_sort_save' => 'Save New Order',
59 63
60 /** 64 /**
61 * Chapters 65 * Chapters
...@@ -81,4 +85,68 @@ return [ ...@@ -81,4 +85,68 @@ return [
81 'pages_new' => 'New Page', 85 'pages_new' => 'New Page',
82 'pages_attachments' => 'Attachments', 86 'pages_attachments' => 'Attachments',
83 'pages_navigation' => 'Page Navigation', 87 'pages_navigation' => 'Page Navigation',
88 + 'pages_delete' => 'Delete Page',
89 + 'pages_delete_draft' => 'Delete Draft Page',
90 + 'pages_delete_confirm' => 'Are you sure you want to delete this page?',
91 + 'pages_delete_draft_confirm' => 'Are you sure you want to delete this draft page?',
92 + 'pages_edit_toggle_header' => 'Toggle header',
93 + 'pages_edit_save_draft' => 'Save Draft',
94 + 'pages_edit_delete_draft' => 'Delete Draft',
95 + 'pages_edit_discard_draft' => 'Discard Draft',
96 + 'pages_edit_set_changelog' => 'Set Changelog',
97 + 'pages_edit_enter_changelog_desc' => 'Enter a brief description of the changes you\'ve made',
98 + 'pages_edit_enter_changelog' => 'Enter Changelog',
99 + 'pages_save' => 'Save Page',
100 + 'pages_title' => 'Page Title',
101 + 'pages_name' => 'Page Name',
102 + 'pages_md_editor' => 'Editor',
103 + 'pages_md_preview' => 'Preview',
104 + 'pages_md_insert_image' => 'Insert Image',
105 + 'pages_md_insert_link' => 'Insert Entity Link',
106 + 'pages_not_in_chapter' => 'Page is not in a chapter',
107 + 'pages_move' => 'Move Page',
108 + 'pages_permissions' => 'Page Permissions',
109 + 'pages_revisions' => 'Page Revisions',
110 + 'pages_revisions_created_by' => 'Created By',
111 + 'pages_revisions_date' => 'Revision Date',
112 + 'pages_revisions_changelog' => 'Changelog',
113 + 'pages_revisions_changes' => 'Changes',
114 + 'pages_revisions_current' => 'Current Version',
115 + 'pages_revisions_preview' => 'Preview',
116 + 'pages_revisions_restore' => 'Restore',
117 + 'pages_revisions_none' => 'This page has no revisions',
118 + 'pages_export' => 'Export',
119 + 'pages_export_html' => 'Contained Web File',
120 + 'pages_export_pdf' => 'PDF File',
121 + 'pages_export_text' => 'Plain Text File',
122 + 'pages_copy_link' => 'Copy Link',
123 + 'pages_permissions_active' => 'Page Permissions Active',
124 +
125 + /**
126 + * Editor sidebar
127 + */
128 + 'page_tags' => 'Page Tags',
129 + 'tag' => 'Tag',
130 + 'tag_value' => 'Tag Value (Optional)',
131 + 'tags_explain' => "Add some tags to better categorise your content. \n You can assign a value to a tag for more in-depth organisation.",
132 + 'tags_add' => 'Add another tag',
133 + 'attachments' => 'Attachments',
134 + 'attachments_explain' => 'Upload some files or attach some link to display on your page. These are visible in the page sidebar.',
135 + 'attachments_explain_instant_save' => 'Changes here are saved instantly.',
136 + 'attachments_items' => 'Attached Items',
137 + 'attachments_upload' => 'Upload File',
138 + 'attachments_link' => 'Attach Link',
139 + 'attachments_set_link' => 'Set Link',
140 + 'attachments_delete_confirm' => 'Click delete again to confirm you want to delete this attachment.',
141 + 'attachments_no_files' => 'No files have been uploaded',
142 + 'attachments_explain_link' => 'You can attach a link if you\'d prefer not to upload a file. This can be a link to another page or a link to a file in the cloud.',
143 + 'attachments_link_name' => 'Link Name',
144 + 'attachment_link' => 'Attachment link',
145 + 'attachments_link_url' => 'Link to file',
146 + 'attachments_link_url_hint' => 'Url of site or file',
147 + 'attach' => 'Attach',
148 + 'attachments_edit_file' => 'Edit File',
149 + 'attachments_edit_file_name' => 'File Name',
150 + 'attachments_edit_drop_upload' => 'Drop files or click here to upload and overwrite',
151 +
84 ]; 152 ];
...\ No newline at end of file ...\ No newline at end of file
......
1 +<div class="breadcrumbs">
2 + <a href="{{$book->getUrl()}}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
3 +</div>
...\ No newline at end of file ...\ No newline at end of file
...@@ -2,6 +2,16 @@ ...@@ -2,6 +2,16 @@
2 2
3 @section('content') 3 @section('content')
4 4
5 + <div class="faded-small toolbar">
6 + <div class="container">
7 + <div class="row">
8 + <div class="col-sm-12 faded">
9 + @include('books._breadcrumbs', ['book' => $book])
10 + </div>
11 + </div>
12 + </div>
13 + </div>
14 +
5 <div class="container small" ng-non-bindable> 15 <div class="container small" ng-non-bindable>
6 <h1>{{ trans('entities.books_delete') }}</h1> 16 <h1>{{ trans('entities.books_delete') }}</h1>
7 <p>{{ trans('entities.books_delete_explain', ['bookName' => $book->name]) }}</p> 17 <p>{{ trans('entities.books_delete_explain', ['bookName' => $book->name]) }}</p>
......
...@@ -2,6 +2,16 @@ ...@@ -2,6 +2,16 @@
2 2
3 @section('content') 3 @section('content')
4 4
5 + <div class="faded-small toolbar">
6 + <div class="container">
7 + <div class="row">
8 + <div class="col-sm-12 faded">
9 + @include('books._breadcrumbs', ['book' => $book])
10 + </div>
11 + </div>
12 + </div>
13 + </div>
14 +
5 <div class="container small" ng-non-bindable> 15 <div class="container small" ng-non-bindable>
6 <h1>{{ trans('entities.books_edit') }}</h1> 16 <h1>{{ trans('entities.books_edit') }}</h1>
7 <form action="{{ $book->getUrl() }}" method="POST"> 17 <form action="{{ $book->getUrl() }}" method="POST">
......
...@@ -6,9 +6,7 @@ ...@@ -6,9 +6,7 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('books._breadcrumbs', ['book' => $book])
10 - <a href="{{$book->getUrl()}}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
11 - </div>
12 </div> 10 </div>
13 </div> 11 </div>
14 </div> 12 </div>
......
...@@ -5,7 +5,10 @@ ...@@ -5,7 +5,10 @@
5 <div class="faded-small toolbar"> 5 <div class="faded-small toolbar">
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 - <div class="col-md-12"> 8 + <div class="col-md-6 faded">
9 + @include('books._breadcrumbs', ['book' => $book])
10 + </div>
11 + <div class="col-md-6">
9 <div class="action-buttons faded"> 12 <div class="action-buttons faded">
10 @if(userCan('page-create', $book)) 13 @if(userCan('page-create', $book))
11 <a href="{{ $book->getUrl('/page/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i>{{ trans('entities.pages_new') }}</a> 14 <a href="{{ $book->getUrl('/page/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i>{{ trans('entities.pages_new') }}</a>
......
...@@ -6,8 +6,18 @@ ...@@ -6,8 +6,18 @@
6 6
7 @section('content') 7 @section('content')
8 8
9 + <div class="faded-small toolbar">
10 + <div class="container">
11 + <div class="row">
12 + <div class="col-sm-12 faded">
13 + @include('books._breadcrumbs', ['book' => $book])
14 + </div>
15 + </div>
16 + </div>
17 + </div>
18 +
9 <div class="container" ng-non-bindable> 19 <div class="container" ng-non-bindable>
10 - <h1>Sorting Pages & Chapters<span class="subheader">For {{ $book->name }}</span></h1> 20 + <h1>{{ trans('entities.books_sort') }}</h1>
11 <div class="row"> 21 <div class="row">
12 <div class="col-md-8" id="sort-boxes"> 22 <div class="col-md-8" id="sort-boxes">
13 23
...@@ -17,7 +27,7 @@ ...@@ -17,7 +27,7 @@
17 27
18 @if(count($books) > 1) 28 @if(count($books) > 1)
19 <div class="col-md-4"> 29 <div class="col-md-4">
20 - <h3>Show Other Books</h3> 30 + <h3>{{ trans('entities.books_sort_show_other') }}</h3>
21 <div id="additional-books"> 31 <div id="additional-books">
22 @foreach($books as $otherBook) 32 @foreach($books as $otherBook)
23 @if($otherBook->id !== $book->id) 33 @if($otherBook->id !== $book->id)
...@@ -37,8 +47,8 @@ ...@@ -37,8 +47,8 @@
37 <input type="hidden" name="_method" value="PUT"> 47 <input type="hidden" name="_method" value="PUT">
38 <input type="hidden" id="sort-tree-input" name="sort-tree"> 48 <input type="hidden" id="sort-tree-input" name="sort-tree">
39 <div class="list"> 49 <div class="list">
40 - <a href="{{ $book->getUrl() }}" class="button muted">Cancel</a> 50 + <a href="{{ $book->getUrl() }}" class="button muted">{{ trans('common.cancel') }}</a>
41 - <button class="button pos" type="submit">Save Order</button> 51 + <button class="button pos" type="submit">{{ trans('entities.books_sort_save') }}</button>
42 </div> 52 </div>
43 </form> 53 </form>
44 54
......
1 +<div class="breadcrumbs">
2 + <a href="{{ $chapter->book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $chapter->book->getShortName() }}</a>
3 + <span class="sep">&raquo;</span>
4 + <a href="{{ $chapter->getUrl() }}" class="text-chapter text-button"><i class="zmdi zmdi-collection-bookmark"></i>{{$chapter->getShortName()}}</a>
5 +</div>
...\ No newline at end of file ...\ No newline at end of file
...@@ -2,6 +2,16 @@ ...@@ -2,6 +2,16 @@
2 2
3 @section('content') 3 @section('content')
4 4
5 + <div class="faded-small toolbar">
6 + <div class="container">
7 + <div class="row">
8 + <div class="col-sm-12 faded">
9 + @include('chapters._breadcrumbs', ['chapter' => $chapter])
10 + </div>
11 + </div>
12 + </div>
13 + </div>
14 +
5 <div class="container small" ng-non-bindable> 15 <div class="container small" ng-non-bindable>
6 <h1>{{ trans('entities.chapters_delete') }}</h1> 16 <h1>{{ trans('entities.chapters_delete') }}</h1>
7 <p>{{ trans('entities.chapters_delete_explain', ['chapterName' => $chapter->name]) }}</p> 17 <p>{{ trans('entities.chapters_delete_explain', ['chapterName' => $chapter->name]) }}</p>
......
...@@ -6,18 +6,14 @@ ...@@ -6,18 +6,14 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('chapters._breadcrumbs', ['chapter' => $chapter])
10 - <a href="{{ $book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
11 - <span class="sep">&raquo;</span>
12 - <a href="{{ $chapter->getUrl() }}" class="text-chapter text-button"><i class="zmdi zmdi-collection-bookmark"></i>{{ $chapter->getShortName() }}</a>
13 - </div>
14 </div> 10 </div>
15 </div> 11 </div>
16 </div> 12 </div>
17 </div> 13 </div>
18 14
19 <div class="container"> 15 <div class="container">
20 - <h1>{{ trans('entities.chapters_move') }} <small class="subheader">{{$chapter->name}}</small></h1> 16 + <h1>{{ trans('entities.chapters_move') }}</h1>
21 17
22 <form action="{{ $chapter->getUrl('/move') }}" method="POST"> 18 <form action="{{ $chapter->getUrl('/move') }}" method="POST">
23 {!! csrf_field() !!} 19 {!! csrf_field() !!}
......
...@@ -6,11 +6,7 @@ ...@@ -6,11 +6,7 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('chapters._breadcrumbs', ['chapter' => $chapter])
10 - <a href="{{ $chapter->book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $chapter->book->getShortName() }}</a>
11 - <span class="sep">&raquo;</span>
12 - <a href="{{ $chapter->getUrl() }}" class="text-chapter text-button"><i class="zmdi zmdi-collection-bookmark"></i>{{$chapter->getShortName()}}</a>
13 - </div>
14 </div> 10 </div>
15 </div> 11 </div>
16 </div> 12 </div>
......
...@@ -6,9 +6,7 @@ ...@@ -6,9 +6,7 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-8 faded" ng-non-bindable> 8 <div class="col-sm-8 faded" ng-non-bindable>
9 - <div class="breadcrumbs"> 9 + @include('chapters._breadcrumbs', ['chapter' => $chapter])
10 - <a href="{{ $book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
11 - </div>
12 </div> 10 </div>
13 <div class="col-sm-4 faded"> 11 <div class="col-sm-4 faded">
14 <div class="action-buttons"> 12 <div class="action-buttons">
......
1 +<div class="breadcrumbs">
2 + <a href="{{ $page->book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $page->book->getShortName() }}</a>
3 + @if($page->hasChapter())
4 + <span class="sep">&raquo;</span>
5 + <a href="{{ $page->chapter->getUrl() }}" class="text-chapter text-button">
6 + <i class="zmdi zmdi-collection-bookmark"></i>
7 + {{ $page->chapter->getShortName() }}
8 + </a>
9 + @endif
10 + <span class="sep">&raquo;</span>
11 + <a href="{{ $page->getUrl() }}" class="text-page text-button"><i class="zmdi zmdi-file"></i>{{ $page->getShortName() }}</a>
12 +</div>
...\ No newline at end of file ...\ No newline at end of file
...@@ -2,15 +2,25 @@ ...@@ -2,15 +2,25 @@
2 2
3 @section('content') 3 @section('content')
4 4
5 + <div class="faded-small toolbar">
6 + <div class="container">
7 + <div class="row">
8 + <div class="col-sm-12 faded">
9 + @include('pages._breadcrumbs', ['page' => $page])
10 + </div>
11 + </div>
12 + </div>
13 + </div>
14 +
5 <div class="container small" ng-non-bindable> 15 <div class="container small" ng-non-bindable>
6 - <h1>Delete {{ $page->draft ? 'Draft' : '' }} Page</h1> 16 + <h1>{{ $page->draft ? trans('entities.pages_delete_draft') : trans('entities.pages_delete') }}</h1>
7 - <p class="text-neg">Are you sure you want to delete this {{ $page->draft ? 'draft' : '' }} page?</p> 17 + <p class="text-neg">{{ $page->draft ? trans('entities.pages_delete_draft_confirm'): trans('entities.pages_delete_confirm') }}</p>
8 18
9 <form action="{{ $page->getUrl() }}" method="POST"> 19 <form action="{{ $page->getUrl() }}" method="POST">
10 {!! csrf_field() !!} 20 {!! csrf_field() !!}
11 <input type="hidden" name="_method" value="DELETE"> 21 <input type="hidden" name="_method" value="DELETE">
12 - <a href="{{ $page->getUrl() }}" class="button primary">Cancel</a> 22 + <a href="{{ $page->getUrl() }}" class="button primary">{{ trans('common.cancel') }}</a>
13 - <button type="submit" class="button neg">Confirm</button> 23 + <button type="submit" class="button neg">{{ trans('common.confirm') }}</button>
14 </form> 24 </form>
15 </div> 25 </div>
16 26
......
...@@ -15,15 +15,11 @@ ...@@ -15,15 +15,11 @@
15 <div class="col-md-8 col-md-offset-2"> 15 <div class="col-md-8 col-md-offset-2">
16 <div class="page-content"> 16 <div class="page-content">
17 17
18 - @include('pages/page-display') 18 + @include('pages.page-display')
19 19
20 <hr> 20 <hr>
21 21
22 - <p class="text-muted small"> 22 + @include('partials.entity-meta', ['entity' => $page])
23 - Created {{$page->created_at->toDayDateTimeString()}} @if($page->createdBy) by {{$page->createdBy->name}} @endif
24 - <br>
25 - Last Updated {{$page->updated_at->toDayDateTimeString()}} @if($page->updatedBy) by {{$page->updatedBy->name}} @endif
26 - </p>
27 23
28 </div> 24 </div>
29 </div> 25 </div>
......
...@@ -3,22 +3,22 @@ ...@@ -3,22 +3,22 @@
3 3
4 <div class="tabs primary-background-light"> 4 <div class="tabs primary-background-light">
5 <span toolbox-toggle><i class="zmdi zmdi-caret-left-circle"></i></span> 5 <span toolbox-toggle><i class="zmdi zmdi-caret-left-circle"></i></span>
6 - <span toolbox-tab-button="tags" title="Page Tags" class="active"><i class="zmdi zmdi-tag"></i></span> 6 + <span toolbox-tab-button="tags" title="{{ trans('entities.page_tags') }}" class="active"><i class="zmdi zmdi-tag"></i></span>
7 @if(userCan('attachment-create-all')) 7 @if(userCan('attachment-create-all'))
8 - <span toolbox-tab-button="files" title="Attachments"><i class="zmdi zmdi-attachment"></i></span> 8 + <span toolbox-tab-button="files" title="{{ trans('entities.attachments') }}"><i class="zmdi zmdi-attachment"></i></span>
9 @endif 9 @endif
10 </div> 10 </div>
11 11
12 <div toolbox-tab-content="tags" ng-controller="PageTagController" page-id="{{ $page->id or 0 }}"> 12 <div toolbox-tab-content="tags" ng-controller="PageTagController" page-id="{{ $page->id or 0 }}">
13 - <h4>Page Tags</h4> 13 + <h4>{{ trans('entities.page_tags') }}</h4>
14 <div class="padded tags"> 14 <div class="padded tags">
15 - <p class="muted small">Add some tags to better categorise your content. <br> You can assign a value to a tag for more in-depth organisation.</p> 15 + <p class="muted small">{!! nl2br(e(trans('entities.tags_explain'))) !!}</p>
16 <table class="no-style" tag-autosuggestions style="width: 100%;"> 16 <table class="no-style" tag-autosuggestions style="width: 100%;">
17 <tbody ui-sortable="sortOptions" ng-model="tags" > 17 <tbody ui-sortable="sortOptions" ng-model="tags" >
18 <tr ng-repeat="tag in tags track by $index"> 18 <tr ng-repeat="tag in tags track by $index">
19 <td width="20" ><i class="handle zmdi zmdi-menu"></i></td> 19 <td width="20" ><i class="handle zmdi zmdi-menu"></i></td>
20 - <td><input autosuggest="{{ baseUrl('/ajax/tags/suggest/names') }}" autosuggest-type="name" class="outline" ng-attr-name="tags[@{{$index}}][name]" type="text" ng-model="tag.name" ng-change="tagChange(tag)" ng-blur="tagBlur(tag)" placeholder="Tag"></td> 20 + <td><input autosuggest="{{ baseUrl('/ajax/tags/suggest/names') }}" autosuggest-type="name" class="outline" ng-attr-name="tags[@{{$index}}][name]" type="text" ng-model="tag.name" ng-change="tagChange(tag)" ng-blur="tagBlur(tag)" placeholder="{{ trans('entities.tag') }}"></td>
21 - <td><input autosuggest="{{ baseUrl('/ajax/tags/suggest/values') }}" autosuggest-type="value" class="outline" ng-attr-name="tags[@{{$index}}][value]" type="text" ng-model="tag.value" ng-change="tagChange(tag)" ng-blur="tagBlur(tag)" placeholder="Tag Value (Optional)"></td> 21 + <td><input autosuggest="{{ baseUrl('/ajax/tags/suggest/values') }}" autosuggest-type="value" class="outline" ng-attr-name="tags[@{{$index}}][value]" type="text" ng-model="tag.value" ng-change="tagChange(tag)" ng-blur="tagBlur(tag)" placeholder="{{ trans('entities.tag_value') }}"></td>
22 <td width="10" ng-show="tags.length != 1" class="text-center text-neg" style="padding: 0;" ng-click="removeTag(tag)"><i class="zmdi zmdi-close"></i></td> 22 <td width="10" ng-show="tags.length != 1" class="text-center text-neg" style="padding: 0;" ng-click="removeTag(tag)"><i class="zmdi zmdi-close"></i></td>
23 </tr> 23 </tr>
24 </tbody> 24 </tbody>
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
28 <tr class="unsortable"> 28 <tr class="unsortable">
29 <td width="34"></td> 29 <td width="34"></td>
30 <td ng-click="addEmptyTag()"> 30 <td ng-click="addEmptyTag()">
31 - <button type="button" class="text-button">Add another tag</button> 31 + <button type="button" class="text-button">{{ trans('entities.tags_add') }}</button>
32 </td> 32 </td>
33 <td></td> 33 <td></td>
34 </tr> 34 </tr>
...@@ -39,17 +39,17 @@ ...@@ -39,17 +39,17 @@
39 39
40 @if(userCan('attachment-create-all')) 40 @if(userCan('attachment-create-all'))
41 <div toolbox-tab-content="files" ng-controller="PageAttachmentController" page-id="{{ $page->id or 0 }}"> 41 <div toolbox-tab-content="files" ng-controller="PageAttachmentController" page-id="{{ $page->id or 0 }}">
42 - <h4>Attachments</h4> 42 + <h4>{{ trans('entities.attachments') }}</h4>
43 <div class="padded files"> 43 <div class="padded files">
44 44
45 <div id="file-list" ng-show="!editFile"> 45 <div id="file-list" ng-show="!editFile">
46 - <p class="muted small">Upload some files or attach some link to display on your page. These are visible in the page sidebar. <span class="secondary">Changes here are saved instantly.</span></p> 46 + <p class="muted small">{{ trans('entities.attachments_explain') }} <span class="secondary">{{ trans('entities.attachments_explain_instant_save') }}</span></p>
47 47
48 <div tab-container> 48 <div tab-container>
49 <div class="nav-tabs"> 49 <div class="nav-tabs">
50 - <div tab-button="list" class="tab-item">Attached Items</div> 50 + <div tab-button="list" class="tab-item">{{ trans('entities.attachments_items') }}</div>
51 - <div tab-button="file" class="tab-item">Upload File</div> 51 + <div tab-button="file" class="tab-item">{{ trans('entities.attachments_upload') }}</div>
52 - <div tab-button="link" class="tab-item">Attach Link</div> 52 + <div tab-button="link" class="tab-item">{{ trans('entities.attachments_link') }}</div>
53 </div> 53 </div>
54 <div tab-content="list"> 54 <div tab-content="list">
55 <table class="file-table" style="width: 100%;"> 55 <table class="file-table" style="width: 100%;">
...@@ -59,9 +59,9 @@ ...@@ -59,9 +59,9 @@
59 <td> 59 <td>
60 <a ng-href="@{{getFileUrl(file)}}" target="_blank" ng-bind="file.name"></a> 60 <a ng-href="@{{getFileUrl(file)}}" target="_blank" ng-bind="file.name"></a>
61 <div ng-if="file.deleting"> 61 <div ng-if="file.deleting">
62 - <span class="neg small">Click delete again to confirm you want to delete this attachment.</span> 62 + <span class="neg small">{{ trans('entities.attachments_delete_confirm') }}</span>
63 <br> 63 <br>
64 - <span class="text-primary small" ng-click="file.deleting=false;">Cancel</span> 64 + <span class="text-primary small" ng-click="file.deleting=false;">{{ trans('common.cancel') }}</span>
65 </div> 65 </div>
66 </td> 66 </td>
67 <td width="10" ng-click="startEdit(file)" class="text-center text-primary" style="padding: 0;"><i class="zmdi zmdi-edit"></i></td> 67 <td width="10" ng-click="startEdit(file)" class="text-center text-primary" style="padding: 0;"><i class="zmdi zmdi-edit"></i></td>
...@@ -71,25 +71,25 @@ ...@@ -71,25 +71,25 @@
71 </tbody> 71 </tbody>
72 </table> 72 </table>
73 <p class="small muted" ng-if="files.length == 0"> 73 <p class="small muted" ng-if="files.length == 0">
74 - No files have been uploaded. 74 + {{ trans('entities.attachments_no_files') }}
75 </p> 75 </p>
76 </div> 76 </div>
77 <div tab-content="file"> 77 <div tab-content="file">
78 <drop-zone upload-url="@{{getUploadUrl()}}" uploaded-to="@{{uploadedTo}}" event-success="uploadSuccess"></drop-zone> 78 <drop-zone upload-url="@{{getUploadUrl()}}" uploaded-to="@{{uploadedTo}}" event-success="uploadSuccess"></drop-zone>
79 </div> 79 </div>
80 <div tab-content="link" sub-form="attachLinkSubmit(file)"> 80 <div tab-content="link" sub-form="attachLinkSubmit(file)">
81 - <p class="muted small">You can attach a link if you'd prefer not to upload a file. This can be a link to another page or a link to a file in the cloud.</p> 81 + <p class="muted small">{{ trans('entities.attachments_explain_link') }}</p>
82 <div class="form-group"> 82 <div class="form-group">
83 - <label for="attachment-via-link">Link Name</label> 83 + <label for="attachment-via-link">{{ trans('entities.attachments_link_name') }}</label>
84 - <input type="text" placeholder="Link name" ng-model="file.name"> 84 + <input type="text" placeholder="{{ trans('entities.attachments_link_name') }}" ng-model="file.name">
85 <p class="small neg" ng-repeat="error in errors.link.name" ng-bind="error"></p> 85 <p class="small neg" ng-repeat="error in errors.link.name" ng-bind="error"></p>
86 </div> 86 </div>
87 <div class="form-group"> 87 <div class="form-group">
88 - <label for="attachment-via-link">Link to file</label> 88 + <label for="attachment-via-link">{{ trans('entities.attachments_link_url') }}</label>
89 - <input type="text" placeholder="Url of site or file" ng-model="file.link"> 89 + <input type="text" placeholder="{{ trans('entities.attachments_link_url_hint') }}" ng-model="file.link">
90 <p class="small neg" ng-repeat="error in errors.link.link" ng-bind="error"></p> 90 <p class="small neg" ng-repeat="error in errors.link.link" ng-bind="error"></p>
91 </div> 91 </div>
92 - <button type="submit" class="button pos">Attach</button> 92 + <button type="submit" class="button pos">{{ trans('entities.attach') }}</button>
93 93
94 </div> 94 </div>
95 </div> 95 </div>
...@@ -97,34 +97,34 @@ ...@@ -97,34 +97,34 @@
97 </div> 97 </div>
98 98
99 <div id="file-edit" ng-if="editFile" sub-form="updateFile(editFile)"> 99 <div id="file-edit" ng-if="editFile" sub-form="updateFile(editFile)">
100 - <h5>Edit File</h5> 100 + <h5>{{ trans('entities.attachments_edit_file') }}</h5>
101 101
102 <div class="form-group"> 102 <div class="form-group">
103 - <label for="attachment-name-edit">File Name</label> 103 + <label for="attachment-name-edit">{{ trans('entities.attachments_edit_file_name') }}</label>
104 - <input type="text" id="attachment-name-edit" placeholder="File name" ng-model="editFile.name"> 104 + <input type="text" id="attachment-name-edit" placeholder="{{ trans('entities.attachments_edit_file_name') }}" ng-model="editFile.name">
105 <p class="small neg" ng-repeat="error in errors.edit.name" ng-bind="error"></p> 105 <p class="small neg" ng-repeat="error in errors.edit.name" ng-bind="error"></p>
106 </div> 106 </div>
107 107
108 <div tab-container="@{{ editFile.external ? 'link' : 'file' }}"> 108 <div tab-container="@{{ editFile.external ? 'link' : 'file' }}">
109 <div class="nav-tabs"> 109 <div class="nav-tabs">
110 - <div tab-button="file" class="tab-item">Upload File</div> 110 + <div tab-button="file" class="tab-item">{{ trans('entities.attachments_upload') }}</div>
111 - <div tab-button="link" class="tab-item">Set Link</div> 111 + <div tab-button="link" class="tab-item">{{ trans('entities.attachments_set_link') }}</div>
112 </div> 112 </div>
113 <div tab-content="file"> 113 <div tab-content="file">
114 - <drop-zone upload-url="@{{getUploadUrl(editFile)}}" uploaded-to="@{{uploadedTo}}" placeholder="Drop files or click here to upload and overwrite" event-success="uploadSuccessUpdate"></drop-zone> 114 + <drop-zone upload-url="@{{getUploadUrl(editFile)}}" uploaded-to="@{{uploadedTo}}" placeholder="{{ trans('entities.attachments_edit_drop_upload') }}" event-success="uploadSuccessUpdate"></drop-zone>
115 <br> 115 <br>
116 </div> 116 </div>
117 <div tab-content="link"> 117 <div tab-content="link">
118 <div class="form-group"> 118 <div class="form-group">
119 - <label for="attachment-link-edit">Link to file</label> 119 + <label for="attachment-link-edit">{{ trans('entities.attachments_link_url') }}</label>
120 - <input type="text" id="attachment-link-edit" placeholder="Attachment link" ng-model="editFile.link"> 120 + <input type="text" id="attachment-link-edit" placeholder="{{ trans('entities.attachment_link') }}" ng-model="editFile.link">
121 <p class="small neg" ng-repeat="error in errors.edit.link" ng-bind="error"></p> 121 <p class="small neg" ng-repeat="error in errors.edit.link" ng-bind="error"></p>
122 </div> 122 </div>
123 </div> 123 </div>
124 </div> 124 </div>
125 125
126 - <button type="button" class="button" ng-click="cancelEdit()">Back</button> 126 + <button type="button" class="button" ng-click="cancelEdit()">{{ trans('entities.back') }}</button>
127 - <button type="submit" class="button pos">Save</button> 127 + <button type="submit" class="button pos">{{ trans('entities.save') }}</button>
128 </div> 128 </div>
129 129
130 </div> 130 </div>
......
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
9 <div class="row"> 9 <div class="row">
10 <div class="col-sm-4 faded"> 10 <div class="col-sm-4 faded">
11 <div class="action-buttons text-left"> 11 <div class="action-buttons text-left">
12 - <a href="{{ back()->getTargetUrl() }}" class="text-button text-primary"><i class="zmdi zmdi-arrow-left"></i>Back</a> 12 + <a href="{{ back()->getTargetUrl() }}" class="text-button text-primary"><i class="zmdi zmdi-arrow-left"></i>{{ trans('common.back') }}</a>
13 - <a onclick="$('body>header').slideToggle();" class="text-button text-primary"><i class="zmdi zmdi-swap-vertical"></i>Toggle Header</a> 13 + <a onclick="$('body>header').slideToggle();" class="text-button text-primary"><i class="zmdi zmdi-swap-vertical"></i>{{ trans('entities.pages_edit_toggle_header') }}</a>
14 </div> 14 </div>
15 </div> 15 </div>
16 <div class="col-sm-4 faded text-center"> 16 <div class="col-sm-4 faded text-center">
...@@ -20,13 +20,13 @@ ...@@ -20,13 +20,13 @@
20 <i class="zmdi zmdi-check-circle text-pos draft-notification" ng-class="{visible: draftUpdated}"></i> 20 <i class="zmdi zmdi-check-circle text-pos draft-notification" ng-class="{visible: draftUpdated}"></i>
21 <ul> 21 <ul>
22 <li> 22 <li>
23 - <a ng-click="forceDraftSave()" class="text-pos"><i class="zmdi zmdi-save"></i>Save Draft</a> 23 + <a ng-click="forceDraftSave()" class="text-pos"><i class="zmdi zmdi-save"></i>{{ trans('entities.pages_edit_save_draft') }}</a>
24 </li> 24 </li>
25 <li ng-if="isNewPageDraft"> 25 <li ng-if="isNewPageDraft">
26 - <a href="{{ $model->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>Delete Draft</a> 26 + <a href="{{ $model->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>{{ trans('entities.pages_edit_delete_draft') }}</a>
27 </li> 27 </li>
28 <li> 28 <li>
29 - <a type="button" ng-if="isUpdateDraft" ng-click="discardDraft()" class="text-neg"><i class="zmdi zmdi-close-circle"></i>Discard Draft</a> 29 + <a type="button" ng-if="isUpdateDraft" ng-click="discardDraft()" class="text-neg"><i class="zmdi zmdi-close-circle"></i>{{ trans('entities.pages_edit_discard_draft') }}</a>
30 </li> 30 </li>
31 </ul> 31 </ul>
32 </div> 32 </div>
...@@ -34,16 +34,16 @@ ...@@ -34,16 +34,16 @@
34 <div class="col-sm-4 faded"> 34 <div class="col-sm-4 faded">
35 <div class="action-buttons" ng-cloak> 35 <div class="action-buttons" ng-cloak>
36 <div dropdown class="dropdown-container"> 36 <div dropdown class="dropdown-container">
37 - <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-edit"></i> @{{(changeSummary | limitTo:16) + (changeSummary.length>16?'...':'') || 'Set Changelog'}}</a> 37 + <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-edit"></i> <span ng-bind="(changeSummary | limitTo:16) + (changeSummary.length>16?'...':'') || '{{ trans('entities.pages_edit_set_changelog') }}'"></span></a>
38 <ul class="wide"> 38 <ul class="wide">
39 <li class="padded"> 39 <li class="padded">
40 - <p class="text-muted">Enter a brief description of the changes you've made</p> 40 + <p class="text-muted">{{ trans('entities.pages_edit_enter_changelog_desc') }}</p>
41 - <input name="summary" id="summary-input" type="text" placeholder="Enter Changelog" ng-model="changeSummary" /> 41 + <input name="summary" id="summary-input" type="text" placeholder="{{ trans('entities.pages_edit_enter_changelog') }}" ng-model="changeSummary" />
42 </li> 42 </li>
43 </ul> 43 </ul>
44 </div> 44 </div>
45 45
46 - <button type="submit" id="save-button" class="text-button text-pos"><i class="zmdi zmdi-floppy"></i>Save Page</button> 46 + <button type="submit" id="save-button" class="text-button text-pos"><i class="zmdi zmdi-floppy"></i>{{ trans('entities.pages_save') }}</button>
47 </div> 47 </div>
48 </div> 48 </div>
49 </div> 49 </div>
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
53 {{--Title input--}} 53 {{--Title input--}}
54 <div class="title-input page-title clearfix" ng-non-bindable> 54 <div class="title-input page-title clearfix" ng-non-bindable>
55 <div class="input"> 55 <div class="input">
56 - @include('form/text', ['name' => 'name', 'placeholder' => 'Page Title']) 56 + @include('form/text', ['name' => 'name', 'placeholder' => trans('entities.pages_title')])
57 </div> 57 </div>
58 </div> 58 </div>
59 59
...@@ -78,11 +78,11 @@ ...@@ -78,11 +78,11 @@
78 78
79 <div class="markdown-editor-wrap"> 79 <div class="markdown-editor-wrap">
80 <div class="editor-toolbar"> 80 <div class="editor-toolbar">
81 - <span class="float left">Editor</span> 81 + <span class="float left">{{ trans('entities.pages_md_editor') }}</span>
82 <div class="float right buttons"> 82 <div class="float right buttons">
83 - <button class="text-button" type="button" data-action="insertImage"><i class="zmdi zmdi-image"></i>Insert Image</button> 83 + <button class="text-button" type="button" data-action="insertImage"><i class="zmdi zmdi-image"></i>{{ trans('entities.pages_md_insert_image') }}</button>
84 &nbsp;|&nbsp; 84 &nbsp;|&nbsp;
85 - <button class="text-button" type="button" data-action="insertEntityLink"><i class="zmdi zmdi-link"></i>Insert Entity Link</button> 85 + <button class="text-button" type="button" data-action="insertEntityLink"><i class="zmdi zmdi-link"></i>{{ trans('entities.pages_md_insert_link') }}</button>
86 </div> 86 </div>
87 </div> 87 </div>
88 88
...@@ -95,7 +95,7 @@ ...@@ -95,7 +95,7 @@
95 95
96 <div class="markdown-editor-wrap"> 96 <div class="markdown-editor-wrap">
97 <div class="editor-toolbar"> 97 <div class="editor-toolbar">
98 - <div class="">Preview</div> 98 + <div class="">{{ trans('entities.pages_md_preview') }}</div>
99 </div> 99 </div>
100 <div class="markdown-display"> 100 <div class="markdown-display">
101 <div class="page-content" ng-bind-html="displayContent"></div> 101 <div class="page-content" ng-bind-html="displayContent"></div>
......
...@@ -3,19 +3,19 @@ ...@@ -3,19 +3,19 @@
3 @section('content') 3 @section('content')
4 4
5 <div class="container small" ng-non-bindable> 5 <div class="container small" ng-non-bindable>
6 - <h1>Create Page</h1> 6 + <h1>{{ trans('entities.pages_new') }}</h1>
7 <form action="{{ $parent->getUrl('/page/create/guest') }}" method="POST"> 7 <form action="{{ $parent->getUrl('/page/create/guest') }}" method="POST">
8 8
9 {!! csrf_field() !!} 9 {!! csrf_field() !!}
10 10
11 <div class="form-group title-input"> 11 <div class="form-group title-input">
12 - <label for="name">Page Name</label> 12 + <label for="name">{{ trans('entities.pages_name') }}</label>
13 @include('form/text', ['name' => 'name']) 13 @include('form/text', ['name' => 'name'])
14 </div> 14 </div>
15 15
16 <div class="form-group"> 16 <div class="form-group">
17 - <a href="{{ $parent->getUrl() }}" class="button muted">Cancel</a> 17 + <a href="{{ $parent->getUrl() }}" class="button muted">{{ trans('common.cancel') }}</a>
18 - <button type="submit" class="button pos">Continue</button> 18 + <button type="submit" class="button pos">{{ trans('common.continue') }}</button>
19 </div> 19 </div>
20 20
21 </form> 21 </form>
......
...@@ -12,8 +12,7 @@ ...@@ -12,8 +12,7 @@
12 @if(isset($style) && $style === 'detailed') 12 @if(isset($style) && $style === 'detailed')
13 <div class="row meta text-muted text-small"> 13 <div class="row meta text-muted text-small">
14 <div class="col-md-6"> 14 <div class="col-md-6">
15 - Created {{$page->created_at->diffForHumans()}} @if($page->createdBy)by {{$page->createdBy->name}}@endif <br> 15 + @include('partials.entity-meta', ['entity' => $page])
16 - Last updated {{ $page->updated_at->diffForHumans() }} @if($page->updatedBy)by {{$page->updatedBy->name}} @endif
17 </div> 16 </div>
18 <div class="col-md-6"> 17 <div class="col-md-6">
19 <a class="text-book" href="{{ $page->book->getUrl() }}"><i class="zmdi zmdi-book"></i>{{ $page->book->getShortName(30) }}</a> 18 <a class="text-book" href="{{ $page->book->getUrl() }}"><i class="zmdi zmdi-book"></i>{{ $page->book->getShortName(30) }}</a>
...@@ -21,7 +20,7 @@ ...@@ -21,7 +20,7 @@
21 @if($page->chapter) 20 @if($page->chapter)
22 <a class="text-chapter" href="{{ $page->chapter->getUrl() }}"><i class="zmdi zmdi-collection-bookmark"></i>{{ $page->chapter->getShortName(30) }}</a> 21 <a class="text-chapter" href="{{ $page->chapter->getUrl() }}"><i class="zmdi zmdi-collection-bookmark"></i>{{ $page->chapter->getShortName(30) }}</a>
23 @else 22 @else
24 - <i class="zmdi zmdi-collection-bookmark"></i> Page is not in a chapter 23 + <i class="zmdi zmdi-collection-bookmark"></i> {{ trans('entities.pages_not_in_chapter') }}
25 @endif 24 @endif
26 </div> 25 </div>
27 </div> 26 </div>
......
...@@ -6,25 +6,14 @@ ...@@ -6,25 +6,14 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('pages._breadcrumbs', ['page' => $page])
10 - <a href="{{ $book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
11 - @if($page->hasChapter())
12 - <span class="sep">&raquo;</span>
13 - <a href="{{ $page->chapter->getUrl() }}" class="text-chapter text-button">
14 - <i class="zmdi zmdi-collection-bookmark"></i>
15 - {{ $page->chapter->getShortName() }}
16 - </a>
17 - @endif
18 - <span class="sep">&raquo;</span>
19 - <a href="{{ $page->getUrl() }}" class="text-page text-button"><i class="zmdi zmdi-file-text"></i>{{ $page->getShortName() }}</a>
20 - </div>
21 </div> 10 </div>
22 </div> 11 </div>
23 </div> 12 </div>
24 </div> 13 </div>
25 14
26 <div class="container"> 15 <div class="container">
27 - <h1>Move Page <small class="subheader">{{$page->name}}</small></h1> 16 + <h1>{{ trans('entities.pages_move') }}</h1>
28 17
29 <form action="{{ $page->getUrl('/move') }}" method="POST"> 18 <form action="{{ $page->getUrl('/move') }}" method="POST">
30 {!! csrf_field() !!} 19 {!! csrf_field() !!}
...@@ -32,8 +21,8 @@ ...@@ -32,8 +21,8 @@
32 21
33 @include('partials/entity-selector', ['name' => 'entity_selection', 'selectorSize' => 'large', 'entityTypes' => 'book,chapter']) 22 @include('partials/entity-selector', ['name' => 'entity_selection', 'selectorSize' => 'large', 'entityTypes' => 'book,chapter'])
34 23
35 - <a href="{{ $page->getUrl() }}" class="button muted">Cancel</a> 24 + <a href="{{ $page->getUrl() }}" class="button muted">{{ trans('common.cancel') }}</a>
36 - <button type="submit" class="button pos">Move Page</button> 25 + <button type="submit" class="button pos">{{ trans('entities.pages_move') }}</button>
37 </form> 26 </form>
38 </div> 27 </div>
39 28
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 <table> 7 <table>
8 <thead> 8 <thead>
9 <tr class="text-left heading primary-background-light"> 9 <tr class="text-left heading primary-background-light">
10 - <th colspan="2">Page Tags</th> 10 + <th colspan="2">{{ trans('entities.page_tags') }}</th>
11 </tr> 11 </tr>
12 </thead> 12 </thead>
13 <tbody> 13 <tbody>
......
...@@ -36,6 +36,5 @@ ...@@ -36,6 +36,5 @@
36 max-width: none; 36 max-width: none;
37 display: none; 37 display: none;
38 } 38 }
39 -
40 </style> 39 </style>
41 @stop 40 @stop
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -6,26 +6,15 @@ ...@@ -6,26 +6,15 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('pages._breadcrumbs', ['page' => $page])
10 - <a href="{{ $page->book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $page->book->getShortName() }}</a>
11 - @if($page->hasChapter())
12 - <span class="sep">&raquo;</span>
13 - <a href="{{ $page->chapter->getUrl() }}" class="text-chapter text-button">
14 - <i class="zmdi zmdi-collection-bookmark"></i>
15 - {{ $page->chapter->getShortName() }}
16 - </a>
17 - @endif
18 - <span class="sep">&raquo;</span>
19 - <a href="{{ $page->getUrl() }}" class="text-page text-button"><i class="zmdi zmdi-file"></i>{{ $page->getShortName() }}</a>
20 - </div>
21 </div> 10 </div>
22 </div> 11 </div>
23 </div> 12 </div>
24 </div> 13 </div>
25 14
26 <div class="container" ng-non-bindable> 15 <div class="container" ng-non-bindable>
27 - <h1>Page Permissions</h1> 16 + <h1>{{ trans('entities.pages_permissions') }}</h1>
28 - @include('form/restriction-form', ['model' => $page]) 17 + @include('form.restriction-form', ['model' => $page])
29 </div> 18 </div>
30 19
31 @stop 20 @stop
......
...@@ -7,14 +7,12 @@ ...@@ -7,14 +7,12 @@
7 <div class="row"> 7 <div class="row">
8 <div class="col-md-9"> 8 <div class="col-md-9">
9 <div class="page-content anim fadeIn"> 9 <div class="page-content anim fadeIn">
10 - @include('pages/page-display') 10 + @include('pages.page-display')
11 </div> 11 </div>
12 </div> 12 </div>
13 </div> 13 </div>
14 </div> 14 </div>
15 15
16 16
17 - 17 + @include('partials.highlight')
18 - @include('partials/highlight')
19 -
20 @stop 18 @stop
......
...@@ -6,37 +6,24 @@ ...@@ -6,37 +6,24 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-12 faded"> 8 <div class="col-sm-12 faded">
9 - <div class="breadcrumbs"> 9 + @include('pages._breadcrumbs', ['page' => $page])
10 - <a href="{{ $page->book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $page->book->getShortName() }}</a>
11 - @if($page->hasChapter())
12 - <span class="sep">&raquo;</span>
13 - <a href="{{ $page->chapter->getUrl() }}" class="text-chapter text-button">
14 - <i class="zmdi zmdi-collection-bookmark"></i>
15 - {{ $page->chapter->getShortName() }}
16 - </a>
17 - @endif
18 - <span class="sep">&raquo;</span>
19 - <a href="{{ $page->getUrl() }}" class="text-page text-button"><i class="zmdi zmdi-file"></i>{{ $page->getShortName() }}</a>
20 - </div>
21 </div> 10 </div>
22 </div> 11 </div>
23 </div> 12 </div>
24 </div> 13 </div>
25 14
26 -
27 -
28 <div class="container" ng-non-bindable> 15 <div class="container" ng-non-bindable>
29 - <h1>Page Revisions <span class="subheader">For "{{ $page->name }}"</span></h1> 16 + <h1>{{ trans('entities.pages_revisions') }}</h1>
30 17
31 @if(count($page->revisions) > 0) 18 @if(count($page->revisions) > 0)
32 19
33 <table class="table"> 20 <table class="table">
34 <tr> 21 <tr>
35 - <th width="23%">Name</th> 22 + <th width="23%">{{ trans('entities.pages_name') }}</th>
36 - <th colspan="2" width="8%">Created By</th> 23 + <th colspan="2" width="8%">{{ trans('entities.pages_revisions_created_by') }}</th>
37 - <th width="15%">Revision Date</th> 24 + <th width="15%">{{ trans('entities.pages_revisions_date') }}</th>
38 - <th width="25%">Changelog</th> 25 + <th width="25%">{{ trans('entities.pages_revisions_changelog') }}</th>
39 - <th width="20%">Actions</th> 26 + <th width="20%">{{ trans('common.actions') }}</th>
40 </tr> 27 </tr>
41 @foreach($page->revisions as $index => $revision) 28 @foreach($page->revisions as $index => $revision)
42 <tr> 29 <tr>
...@@ -46,19 +33,19 @@ ...@@ -46,19 +33,19 @@
46 <img class="avatar" src="{{ $revision->createdBy->getAvatar(30) }}" alt="{{ $revision->createdBy->name }}"> 33 <img class="avatar" src="{{ $revision->createdBy->getAvatar(30) }}" alt="{{ $revision->createdBy->name }}">
47 @endif 34 @endif
48 </td> 35 </td>
49 - <td> @if($revision->createdBy) {{ $revision->createdBy->name }} @else Deleted User @endif</td> 36 + <td> @if($revision->createdBy) {{ $revision->createdBy->name }} @else {{ trans('common.deleted_user') }} @endif</td>
50 <td><small>{{ $revision->created_at->format('jS F, Y H:i:s') }} <br> ({{ $revision->created_at->diffForHumans() }})</small></td> 37 <td><small>{{ $revision->created_at->format('jS F, Y H:i:s') }} <br> ({{ $revision->created_at->diffForHumans() }})</small></td>
51 <td>{{ $revision->summary }}</td> 38 <td>{{ $revision->summary }}</td>
52 <td> 39 <td>
53 - <a href="{{ $revision->getUrl('changes') }}" target="_blank">Changes</a> 40 + <a href="{{ $revision->getUrl('changes') }}" target="_blank">{{ trans('entities.pages_revisions_changes') }}</a>
54 <span class="text-muted">&nbsp;|&nbsp;</span> 41 <span class="text-muted">&nbsp;|&nbsp;</span>
55 42
56 @if ($index === 0) 43 @if ($index === 0)
57 - <a target="_blank" href="{{ $page->getUrl() }}"><i>Current Version</i></a> 44 + <a target="_blank" href="{{ $page->getUrl() }}"><i>{{ trans('entities.pages_revisions_current') }}</i></a>
58 @else 45 @else
59 - <a href="{{ $revision->getUrl() }}" target="_blank">Preview</a> 46 + <a href="{{ $revision->getUrl() }}" target="_blank">{{ trans('entities.pages_revisions_preview') }}</a>
60 <span class="text-muted">&nbsp;|&nbsp;</span> 47 <span class="text-muted">&nbsp;|&nbsp;</span>
61 - <a href="{{ $revision->getUrl('restore') }}" target="_blank">Restore</a> 48 + <a href="{{ $revision->getUrl('restore') }}" target="_blank">{{ trans('entities.pages_revisions_restore') }}</a>
62 @endif 49 @endif
63 </td> 50 </td>
64 </tr> 51 </tr>
...@@ -66,7 +53,7 @@ ...@@ -66,7 +53,7 @@
66 </table> 53 </table>
67 54
68 @else 55 @else
69 - <p>This page has no revisions.</p> 56 + <p>{{ trans('entities.pages_revisions_none') }}</p>
70 @endif 57 @endif
71 58
72 </div> 59 </div>
......
...@@ -6,43 +6,34 @@ ...@@ -6,43 +6,34 @@
6 <div class="container"> 6 <div class="container">
7 <div class="row"> 7 <div class="row">
8 <div class="col-sm-6 faded"> 8 <div class="col-sm-6 faded">
9 - <div class="breadcrumbs"> 9 + @include('pages._breadcrumbs', ['page' => $page])
10 - <a href="{{ $book->getUrl() }}" class="text-book text-button"><i class="zmdi zmdi-book"></i>{{ $book->getShortName() }}</a>
11 - @if($page->hasChapter())
12 - <span class="sep">&raquo;</span>
13 - <a href="{{ $page->chapter->getUrl() }}" class="text-chapter text-button">
14 - <i class="zmdi zmdi-collection-bookmark"></i>
15 - {{ $page->chapter->getShortName() }}
16 - </a>
17 - @endif
18 - </div>
19 </div> 10 </div>
20 <div class="col-sm-6 faded"> 11 <div class="col-sm-6 faded">
21 <div class="action-buttons"> 12 <div class="action-buttons">
22 <span dropdown class="dropdown-container"> 13 <span dropdown class="dropdown-container">
23 - <div dropdown-toggle class="text-button text-primary"><i class="zmdi zmdi-open-in-new"></i>Export</div> 14 + <div dropdown-toggle class="text-button text-primary"><i class="zmdi zmdi-open-in-new"></i>{{ trans('entities.pages_export') }}</div>
24 <ul class="wide"> 15 <ul class="wide">
25 - <li><a href="{{ $page->getUrl('/export/html') }}" target="_blank">Contained Web File <span class="text-muted float right">.html</span></a></li> 16 + <li><a href="{{ $page->getUrl('/export/html') }}" target="_blank">{{ trans('entities.pages_export_html') }} <span class="text-muted float right">.html</span></a></li>
26 - <li><a href="{{ $page->getUrl('/export/pdf') }}" target="_blank">PDF File <span class="text-muted float right">.pdf</span></a></li> 17 + <li><a href="{{ $page->getUrl('/export/pdf') }}" target="_blank">{{ trans('entities.pages_export_pdf') }} <span class="text-muted float right">.pdf</span></a></li>
27 - <li><a href="{{ $page->getUrl('/export/plaintext') }}" target="_blank">Plain Text File <span class="text-muted float right">.txt</span></a></li> 18 + <li><a href="{{ $page->getUrl('/export/plaintext') }}" target="_blank">{{ trans('entities.pages_export_text') }} <span class="text-muted float right">.txt</span></a></li>
28 </ul> 19 </ul>
29 </span> 20 </span>
30 @if(userCan('page-update', $page)) 21 @if(userCan('page-update', $page))
31 - <a href="{{ $page->getUrl('/edit') }}" class="text-primary text-button" ><i class="zmdi zmdi-edit"></i>Edit</a> 22 + <a href="{{ $page->getUrl('/edit') }}" class="text-primary text-button" ><i class="zmdi zmdi-edit"></i>{{ trans('entities.edit') }}</a>
32 @endif 23 @endif
33 @if(userCan('page-update', $page) || userCan('restrictions-manage', $page) || userCan('page-delete', $page)) 24 @if(userCan('page-update', $page) || userCan('restrictions-manage', $page) || userCan('page-delete', $page))
34 <div dropdown class="dropdown-container"> 25 <div dropdown class="dropdown-container">
35 <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-more-vert"></i></a> 26 <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-more-vert"></i></a>
36 <ul> 27 <ul>
37 @if(userCan('page-update', $page)) 28 @if(userCan('page-update', $page))
38 - <li><a href="{{ $page->getUrl('/move') }}" class="text-primary" ><i class="zmdi zmdi-folder"></i>Move</a></li> 29 + <li><a href="{{ $page->getUrl('/move') }}" class="text-primary" ><i class="zmdi zmdi-folder"></i>{{ trans('entities.move') }}</a></li>
39 - <li><a href="{{ $page->getUrl('/revisions') }}" class="text-primary"><i class="zmdi zmdi-replay"></i>Revisions</a></li> 30 + <li><a href="{{ $page->getUrl('/revisions') }}" class="text-primary"><i class="zmdi zmdi-replay"></i>{{ trans('entities.revisions') }}</a></li>
40 @endif 31 @endif
41 @if(userCan('restrictions-manage', $page)) 32 @if(userCan('restrictions-manage', $page))
42 - <li><a href="{{ $page->getUrl('/permissions') }}" class="text-primary"><i class="zmdi zmdi-lock-outline"></i>Permissions</a></li> 33 + <li><a href="{{ $page->getUrl('/permissions') }}" class="text-primary"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.permissions') }}</a></li>
43 @endif 34 @endif
44 @if(userCan('page-delete', $page)) 35 @if(userCan('page-delete', $page))
45 - <li><a href="{{ $page->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>Delete</a></li> 36 + <li><a href="{{ $page->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>{{ trans('entities.delete') }}</a></li>
46 @endif 37 @endif
47 </ul> 38 </ul>
48 </div> 39 </div>
...@@ -64,7 +55,7 @@ ...@@ -64,7 +55,7 @@
64 <div class="pointer anim"> 55 <div class="pointer anim">
65 <i class="zmdi zmdi-link"></i> 56 <i class="zmdi zmdi-link"></i>
66 <input readonly="readonly" type="text" placeholder="url"> 57 <input readonly="readonly" type="text" placeholder="url">
67 - <button class="button icon" title="Copy Link" data-clipboard-text=""><i class="zmdi zmdi-copy"></i></button> 58 + <button class="button icon" title="{{ trans('entities.pages_copy_link') }}" data-clipboard-text=""><i class="zmdi zmdi-copy"></i></button>
68 </div> 59 </div>
69 </div> 60 </div>
70 61
...@@ -84,27 +75,27 @@ ...@@ -84,27 +75,27 @@
84 75
85 @if($book->restricted) 76 @if($book->restricted)
86 @if(userCan('restrictions-manage', $book)) 77 @if(userCan('restrictions-manage', $book))
87 - <a href="{{ $book->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>Book Permissions Active</a> 78 + <a href="{{ $book->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.books_permissions_active') }}</a>
88 @else 79 @else
89 - <i class="zmdi zmdi-lock-outline"></i>Book Permissions Active 80 + <i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.books_permissions_active') }}
90 @endif 81 @endif
91 <br> 82 <br>
92 @endif 83 @endif
93 84
94 @if($page->chapter && $page->chapter->restricted) 85 @if($page->chapter && $page->chapter->restricted)
95 @if(userCan('restrictions-manage', $page->chapter)) 86 @if(userCan('restrictions-manage', $page->chapter))
96 - <a href="{{ $page->chapter->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>Chapter Permissions Active</a> 87 + <a href="{{ $page->chapter->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.chapters_permissions_active') }}</a>
97 @else 88 @else
98 - <i class="zmdi zmdi-lock-outline"></i>Chapter Permissions Active 89 + <i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.chapters_permissions_active') }}
99 @endif 90 @endif
100 <br> 91 <br>
101 @endif 92 @endif
102 93
103 @if($page->restricted) 94 @if($page->restricted)
104 @if(userCan('restrictions-manage', $page)) 95 @if(userCan('restrictions-manage', $page))
105 - <a href="{{ $page->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>Page Permissions Active</a> 96 + <a href="{{ $page->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.pages_permissions_active') }}</a>
106 @else 97 @else
107 - <i class="zmdi zmdi-lock-outline"></i>Page Permissions Active 98 + <i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.pages_permissions_active') }}
108 @endif 99 @endif
109 <br> 100 <br>
110 @endif 101 @endif
......
...@@ -28,7 +28,7 @@ class SortTest extends TestCase ...@@ -28,7 +28,7 @@ class SortTest extends TestCase
28 $currentBook = $page->book; 28 $currentBook = $page->book;
29 $newBook = \BookStack\Book::where('id', '!=', $currentBook->id)->first(); 29 $newBook = \BookStack\Book::where('id', '!=', $currentBook->id)->first();
30 $this->asAdmin()->visit($page->getUrl() . '/move') 30 $this->asAdmin()->visit($page->getUrl() . '/move')
31 - ->see('Move Page')->see($page->name) 31 + ->see('Move Page')
32 ->type('book:' . $newBook->id, 'entity_selection')->press('Move Page'); 32 ->type('book:' . $newBook->id, 'entity_selection')->press('Move Page');
33 33
34 $page = \BookStack\Page::find($page->id); 34 $page = \BookStack\Page::find($page->id);
......
...@@ -64,7 +64,7 @@ class PublicActionTest extends TestCase ...@@ -64,7 +64,7 @@ class PublicActionTest extends TestCase
64 $this->visit($chapter->book->getUrl()); 64 $this->visit($chapter->book->getUrl());
65 $this->visit($chapter->getUrl()) 65 $this->visit($chapter->getUrl())
66 ->click('New Page') 66 ->click('New Page')
67 - ->see('Create Page') 67 + ->see('New Page')
68 ->seePageIs($chapter->getUrl('/create-page')); 68 ->seePageIs($chapter->getUrl('/create-page'));
69 69
70 $this->submitForm('Continue', [ 70 $this->submitForm('Continue', [
......