]>
BookStack Code Mirror - bookstack/blobdiff - app/Http/Controllers/BookSortController.php
projects
/
bookstack
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #3556 from GongMingCai/development
[bookstack]
/
app
/
Http
/
Controllers
/
BookSortController.php
diff --git
a/app/Http/Controllers/BookSortController.php
b/app/Http/Controllers/BookSortController.php
index f5fb6f255537c2d16017f7365974863cc402260f..8aac2b76934cd9ca85c0e7b46cb5f5feac049e36 100644
(file)
--- a/
app/Http/Controllers/BookSortController.php
+++ b/
app/Http/Controllers/BookSortController.php
@@
-2,26
+2,20
@@
namespace BookStack\Http\Controllers;
namespace BookStack\Http\Controllers;
-use BookStack\Entities\Book;
-use BookStack\Entities\Managers\BookContents;
+use BookStack\Actions\ActivityType;
use BookStack\Entities\Repos\BookRepo;
use BookStack\Entities\Repos\BookRepo;
-use BookStack\Exceptions\SortOperationException;
+use BookStack\Entities\Tools\BookContents;
+use BookStack\Entities\Tools\BookSortMap;
use BookStack\Facades\Activity;
use Illuminate\Http\Request;
class BookSortController extends Controller
{
use BookStack\Facades\Activity;
use Illuminate\Http\Request;
class BookSortController extends Controller
{
-
protected $bookRepo;
protected $bookRepo;
- /**
- * BookSortController constructor.
- * @param $bookRepo
- */
public function __construct(BookRepo $bookRepo)
{
$this->bookRepo = $bookRepo;
public function __construct(BookRepo $bookRepo)
{
$this->bookRepo = $bookRepo;
- parent::__construct();
}
/**
}
/**
@@
-35,6
+29,7
@@
class BookSortController extends Controller
$bookChildren = (new BookContents($book))->getTree(false);
$this->setPageTitle(trans('entities.books_sort_named', ['bookName'=>$book->getShortName()]));
$bookChildren = (new BookContents($book))->getTree(false);
$this->setPageTitle(trans('entities.books_sort_named', ['bookName'=>$book->getShortName()]));
+
return view('books.sort', ['book' => $book, 'current' => $book, 'bookChildren' => $bookChildren]);
}
return view('books.sort', ['book' => $book, 'current' => $book, 'bookChildren' => $bookChildren]);
}
@@
-46,7
+41,8
@@
class BookSortController extends Controller
{
$book = $this->bookRepo->getBySlug($bookSlug);
$bookChildren = (new BookContents($book))->getTree();
{
$book = $this->bookRepo->getBySlug($bookSlug);
$bookChildren = (new BookContents($book))->getTree();
- return view('books.sort-box', ['book' => $book, 'bookChildren' => $bookChildren]);
+
+ return view('books.parts.sort-box', ['book' => $book, 'bookChildren' => $bookChildren]);
}
/**
}
/**
@@
-62,20
+58,14
@@
class BookSortController extends Controller
return redirect($book->getUrl());
}
return redirect($book->getUrl());
}
- $sortMap =
collect(json_decode($request->get('sort-tree')
));
+ $sortMap =
BookSortMap::fromJson($request->get('sort-tree'
));
$bookContents = new BookContents($book);
$bookContents = new BookContents($book);
- $booksInvolved = collect();
-
- try {
- $booksInvolved = $bookContents->sortUsingMap($sortMap);
- } catch (SortOperationException $exception) {
- $this->showPermissionError();
- }
+ $booksInvolved = $bookContents->sortUsingMap($sortMap);
// Rebuild permissions and add activity for involved books.
// Rebuild permissions and add activity for involved books.
-
$booksInvolved->each(function (Book $book
) {
- Activity::add(
$book, 'book_sort', $book->i
d);
- }
);
+
foreach ($booksInvolved as $bookInvolved
) {
+ Activity::add(
ActivityType::BOOK_SORT, $bookInvolve
d);
+ }
return redirect($book->getUrl());
}
return redirect($book->getUrl());
}