-@extends('base')
+@extends('sidebar-layout')
-@section('content')
-
- <div class="faded-small toolbar">
- <div class="container">
- <div class="row">
- <div class="col-md-12">
- <div class="action-buttons faded">
- @if(userCan('page-create', $book))
- <a href="{{ $book->getUrl('/page/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i> New Page</a>
- @endif
- @if(userCan('chapter-create', $book))
- <a href="{{ $book->getUrl('/chapter/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i> New Chapter</a>
- @endif
+@section('toolbar')
+ <div class="col-sm-6 col-xs-1 faded">
+ @include('books._breadcrumbs', ['book' => $book])
+ </div>
+ <div class="col-sm-6 col-xs-11">
+ <div class="action-buttons faded">
+ <span dropdown class="dropdown-container">
+ <div dropdown-toggle class="text-button text-primary"><i class="zmdi zmdi-open-in-new"></i>{{ trans('entities.export') }}</div>
+ <ul class="wide">
+ <li><a href="{{ $book->getUrl('/export/html') }}" target="_blank">{{ trans('entities.export_html') }} <span class="text-muted float right">.html</span></a></li>
+ <li><a href="{{ $book->getUrl('/export/pdf') }}" target="_blank">{{ trans('entities.export_pdf') }} <span class="text-muted float right">.pdf</span></a></li>
+ <li><a href="{{ $book->getUrl('/export/plaintext') }}" target="_blank">{{ trans('entities.export_text') }} <span class="text-muted float right">.txt</span></a></li>
+ </ul>
+ </span>
+ @if(userCan('page-create', $book))
+ <a href="{{ $book->getUrl('/page/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i>{{ trans('entities.pages_new') }}</a>
+ @endif
+ @if(userCan('chapter-create', $book))
+ <a href="{{ $book->getUrl('/chapter/create') }}" class="text-pos text-button"><i class="zmdi zmdi-plus"></i>{{ trans('entities.chapters_new') }}</a>
+ @endif
+ @if(userCan('book-update', $book) || userCan('restrictions-manage', $book) || userCan('book-delete', $book))
+ <div dropdown class="dropdown-container">
+ <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-more-vert"></i>{{ trans('common.more') }}</a>
+ <ul>
@if(userCan('book-update', $book))
- <a href="{{$book->getEditUrl()}}" class="text-primary text-button"><i class="zmdi zmdi-edit"></i>Edit</a>
+ <li><a href="{{$book->getEditUrl()}}" class="text-primary"><i class="zmdi zmdi-edit"></i>{{ trans('common.edit') }}</a></li>
+ <li><a href="{{ $book->getUrl('/sort') }}" class="text-primary"><i class="zmdi zmdi-sort"></i>{{ trans('common.sort') }}</a></li>
+ @endif
+ @if(userCan('restrictions-manage', $book))
+ <li><a href="{{ $book->getUrl('/permissions') }}" class="text-primary"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.permissions') }}</a></li>
@endif
- @if(userCan('book-update', $book) || userCan('restrictions-manage', $book) || userCan('book-delete', $book))
- <div dropdown class="dropdown-container">
- <a dropdown-toggle class="text-primary text-button"><i class="zmdi zmdi-more-vert"></i></a>
- <ul>
- @if(userCan('book-update', $book))
- <li><a href="{{ $book->getUrl('/sort') }}" class="text-primary"><i class="zmdi zmdi-sort"></i>Sort</a></li>
- @endif
- @if(userCan('restrictions-manage', $book))
- <li><a href="{{ $book->getUrl('/permissions') }}" class="text-primary"><i class="zmdi zmdi-lock-outline"></i>Permissions</a></li>
- @endif
- @if(userCan('book-delete', $book))
- <li><a href="{{ $book->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>Delete</a></li>
- @endif
- </ul>
- </div>
+ @if(userCan('book-delete', $book))
+ <li><a href="{{ $book->getUrl('/delete') }}" class="text-neg"><i class="zmdi zmdi-delete"></i>{{ trans('common.delete') }}</a></li>
@endif
- </div>
+ </ul>
</div>
- </div>
+ @endif
</div>
</div>
+@stop
+@section('sidebar')
- <div class="container" id="book-dashboard" ng-controller="BookShowController" book-id="{{ $book->id }}">
- <div class="row">
- <div class="col-md-7">
+ <div class="card">
+ <div class="body">
+ <form v-on:submit.prevent="searchBook" class="search-box">
+ <input v-model="searchTerm" v-on:change="checkSearchForm()" type="text" name="term" placeholder="{{ trans('entities.books_search_this') }}">
+ <button type="submit"><i class="zmdi zmdi-search"></i></button>
+ <button v-if="searching" v-cloak class="text-neg" v-on:click="clearSearch()" type="button"><i class="zmdi zmdi-close"></i></button>
+ </form>
+ </div>
+ </div>
- <h1>{{$book->name}}</h1>
- <div class="book-content" ng-show="!searching">
- <p class="text-muted" ng-non-bindable>{{$book->description}}</p>
+ @if($book->restricted)
+ <div class="card">
+ <h3><i class="zmdi zmdi-key"></i> {{ trans('entities.permissions') }}</h3>
+ <div class="body">
+ <p class="text-muted">
+ @if(userCan('restrictions-manage', $book))
+ <a href="{{ $book->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.books_permissions_active') }}</a>
+ @else
+ <i class="zmdi zmdi-lock-outline"></i>{{ trans('entities.books_permissions_active') }}
+ @endif
+ </p>
+ </div>
+ </div>
+ @endif
- <div class="page-list" ng-non-bindable>
- <hr>
- @if(count($bookChildren) > 0)
- @foreach($bookChildren as $childElement)
- @if($childElement->isA('chapter'))
- @include('chapters/list-item', ['chapter' => $childElement])
- @else
- @include('pages/list-item', ['page' => $childElement])
- @endif
- <hr>
- @endforeach
- @else
- <p class="text-muted">No pages or chapters have been created for this book.</p>
- <p>
- <a href="{{ $book->getUrl('/page/create') }}" class="text-page"><i class="zmdi zmdi-file-text"></i>Create a new page</a>
- <em class="text-muted">-or-</em>
- <a href="{{ $book->getUrl('/chapter/create') }}" class="text-chapter"><i class="zmdi zmdi-collection-bookmark"></i>Add a chapter</a>
- </p>
- <hr>
- @endif
- <p class="text-muted small">
- Created {{$book->created_at->diffForHumans()}} @if($book->createdBy) by <a href="{{ $book->createdBy->getProfileUrl() }}">{{$book->createdBy->name}}</a> @endif
- <br>
- Last Updated {{$book->updated_at->diffForHumans()}} @if($book->updatedBy) by <a href="{{ $book->updatedBy->getProfileUrl() }}">{{$book->updatedBy->name}}</a> @endif
- </p>
- </div>
- </div>
- <div class="search-results" ng-cloak ng-show="searching">
- <h3 class="text-muted">Search Results <a ng-if="searching" ng-click="clearSearch()" class="text-small"><i class="zmdi zmdi-close"></i>Clear Search</a></h3>
- <div ng-if="!searchResults">
- @include('partials/loading-icon')
- </div>
- <div ng-bind-html="searchResults"></div>
- </div>
+ @if(count($activity) > 0)
+ <div class="activity card">
+ <h3><i class="zmdi zmdi-time"></i> {{ trans('entities.recent_activity') }}</h3>
+ @include('partials/activity-list', ['activity' => $activity])
+ </div>
+ @endif
+
+ <div class="card">
+ <h3><i class="zmdi zmdi-info-outline"></i> {{ trans('common.details') }}</h3>
+ <div class="body">
+ @include('partials.entity-meta', ['entity' => $book])
+ </div>
+ </div>
+@stop
+@section('container-attrs')
+ id="entity-dashboard"
+ entity-id="{{ $book->id }}"
+ entity-type="book"
+@stop
- </div>
+@section('body')
- <div class="col-md-4 col-md-offset-1">
- <div class="margin-top large"></div>
- @if($book->restricted)
- <p class="text-muted">
- @if(userCan('restrictions-manage', $book))
- <a href="{{ $book->getUrl('/permissions') }}"><i class="zmdi zmdi-lock-outline"></i>Book Permissions Active</a>
- @else
- <i class="zmdi zmdi-lock-outline"></i>Book Permissions Active
+ <div ng-non-bindable class="container small">
+ <h1>{{$book->name}}</h1>
+ <div class="book-content" v-show="!searching">
+ <p class="text-muted" v-pre>{!! nl2br(e($book->description)) !!}</p>
+ @if(count($bookChildren) > 0)
+ <div class="page-list" v-pre>
+ <hr>
+ @foreach($bookChildren as $childElement)
+ @if($childElement->isA('chapter'))
+ @include('chapters/list-item', ['chapter' => $childElement])
+ @else
+ @include('pages/list-item', ['page' => $childElement])
+ @endif
+ <hr>
+ @endforeach
+ </div>
+ @else
+ <div class="well">
+ <p class="text-muted italic">{{ trans('entities.books_empty_contents') }}</p>
+ @if(userCan('page-create', $book))
+ <a href="{{ $book->getUrl('/page/create') }}" class="button outline page"><i class="zmdi zmdi-file-text"></i>{{ trans('entities.books_empty_create_page') }}</a>
+ @endif
+ @if(userCan('page-create', $book) && userCan('chapter-create', $book))
+ <em class="text-muted">-{{ trans('entities.books_empty_or') }}-</em>
+ @endif
+ @if(userCan('chapter-create', $book))
+ <a href="{{ $book->getUrl('/chapter/create') }}" class="button outline chapter"><i class="zmdi zmdi-collection-bookmark"></i>{{ trans('entities.books_empty_add_chapter') }}</a>
@endif
- </p>
- @endif
- <div class="search-box">
- <form ng-submit="searchBook($event)">
- <input ng-model="searchTerm" ng-change="checkSearchForm()" type="text" name="term" placeholder="Search This Book">
- <button type="submit"><i class="zmdi zmdi-search"></i></button>
- <button ng-if="searching" ng-click="clearSearch()" type="button"><i class="zmdi zmdi-close"></i></button>
- </form>
- </div>
- <div class="activity anim fadeIn">
- <h3>Recent Activity</h3>
- @include('partials/activity-list', ['activity' => Activity::entityActivity($book, 20, 0)])
</div>
+ @endif
+
+ </div>
+ <div class="search-results" v-cloak v-show="searching">
+ <h3 class="text-muted">{{ trans('entities.search_results') }} <a v-if="searching" v-on:click="clearSearch()" class="text-small"><i class="zmdi zmdi-close"></i>{{ trans('entities.search_clear') }}</a></h3>
+ <div v-if="!searchResults">
+ @include('partials/loading-icon')
</div>
+ <div v-html="searchResults"></div>
</div>
</div>
-@stop
\ No newline at end of file
+@stop