0
0
Fork 0
mirror of https://github.com/BookStackApp/BookStack.git synced 2025-05-10 19:10:39 +00:00

Re-structured the app code to be feature based rather than code type based

This commit is contained in:
Dan Brown 2018-09-25 12:30:50 +01:00
parent 19751ed1cb
commit 919660678b
No known key found for this signature in database
GPG key ID: 46D9F943C24A2EF9
109 changed files with 684 additions and 531 deletions

View file

@ -11,7 +11,7 @@
|
*/
$factory->define(BookStack\User::class, function ($faker) {
$factory->define(\BookStack\Auth\User::class, function ($faker) {
return [
'name' => $faker->name,
'email' => $faker->email,
@ -21,7 +21,7 @@ $factory->define(BookStack\User::class, function ($faker) {
];
});
$factory->define(BookStack\Bookshelf::class, function ($faker) {
$factory->define(\BookStack\Entities\Bookshelf::class, function ($faker) {
return [
'name' => $faker->sentence,
'slug' => str_random(10),
@ -29,7 +29,7 @@ $factory->define(BookStack\Bookshelf::class, function ($faker) {
];
});
$factory->define(BookStack\Book::class, function ($faker) {
$factory->define(\BookStack\Entities\Book::class, function ($faker) {
return [
'name' => $faker->sentence,
'slug' => str_random(10),
@ -37,7 +37,7 @@ $factory->define(BookStack\Book::class, function ($faker) {
];
});
$factory->define(BookStack\Chapter::class, function ($faker) {
$factory->define(\BookStack\Entities\Chapter::class, function ($faker) {
return [
'name' => $faker->sentence,
'slug' => str_random(10),
@ -45,7 +45,7 @@ $factory->define(BookStack\Chapter::class, function ($faker) {
];
});
$factory->define(BookStack\Page::class, function ($faker) {
$factory->define(\BookStack\Entities\Page::class, function ($faker) {
$html = '<p>' . implode('</p>', $faker->paragraphs(5)) . '</p>';
return [
'name' => $faker->sentence,
@ -56,21 +56,21 @@ $factory->define(BookStack\Page::class, function ($faker) {
];
});
$factory->define(BookStack\Role::class, function ($faker) {
$factory->define(\BookStack\Auth\Role::class, function ($faker) {
return [
'display_name' => $faker->sentence(3),
'description' => $faker->sentence(10)
];
});
$factory->define(BookStack\Tag::class, function ($faker) {
$factory->define(\BookStack\Actions\Tag::class, function ($faker) {
return [
'name' => $faker->city,
'value' => $faker->sentence(3)
];
});
$factory->define(BookStack\Image::class, function ($faker) {
$factory->define(\BookStack\Uploads\Image::class, function ($faker) {
return [
'name' => $faker->slug . '.jpg',
'url' => $faker->url,
@ -80,7 +80,7 @@ $factory->define(BookStack\Image::class, function ($faker) {
];
});
$factory->define(BookStack\Comment::class, function($faker) {
$factory->define(\BookStack\Actions\Comment::class, function($faker) {
$text = $faker->paragraph(1);
$html = '<p>' . $text. '</p>';
return [

View file

@ -1,6 +1,6 @@
<?php
use BookStack\Image;
use BookStack\Uploads\Image;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

View file

@ -119,11 +119,11 @@ class CreateBookshelvesTable extends Migration
Schema::dropIfExists('bookshelves');
// Drop related polymorphic items
DB::table('activities')->where('entity_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('views')->where('viewable_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('entity_permissions')->where('restrictable_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('tags')->where('entity_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('search_terms')->where('entity_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('comments')->where('entity_type', '=', 'BookStack\Bookshelf')->delete();
DB::table('activities')->where('entity_type', '=', 'BookStack\Entities\Bookshelf')->delete();
DB::table('views')->where('viewable_type', '=', 'BookStack\Entities\Bookshelf')->delete();
DB::table('entity_permissions')->where('restrictable_type', '=', 'BookStack\Entities\Bookshelf')->delete();
DB::table('tags')->where('entity_type', '=', 'BookStack\Entities\Bookshelf')->delete();
DB::table('search_terms')->where('entity_type', '=', 'BookStack\Entities\Bookshelf')->delete();
DB::table('comments')->where('entity_type', '=', 'BookStack\Entities\Bookshelf')->delete();
}
}

View file

@ -12,39 +12,39 @@ class DummyContentSeeder extends Seeder
public function run()
{
// Create an editor user
$editorUser = factory(\BookStack\User::class)->create();
$editorRole = \BookStack\Role::getRole('editor');
$editorUser = factory(\BookStack\Auth\User::class)->create();
$editorRole = \BookStack\Auth\Role::getRole('editor');
$editorUser->attachRole($editorRole);
// Create a viewer user
$viewerUser = factory(\BookStack\User::class)->create();
$role = \BookStack\Role::getRole('viewer');
$viewerUser = factory(\BookStack\Auth\User::class)->create();
$role = \BookStack\Auth\Role::getRole('viewer');
$viewerUser->attachRole($role);
$byData = ['created_by' => $editorUser->id, 'updated_by' => $editorUser->id];
factory(\BookStack\Book::class, 5)->create($byData)
factory(\BookStack\Entities\Book::class, 5)->create($byData)
->each(function($book) use ($editorUser, $byData) {
$chapters = factory(\BookStack\Chapter::class, 3)->create($byData)
$chapters = factory(\BookStack\Entities\Chapter::class, 3)->create($byData)
->each(function($chapter) use ($editorUser, $book, $byData){
$pages = factory(\BookStack\Page::class, 3)->make(array_merge($byData, ['book_id' => $book->id]));
$pages = factory(\BookStack\Entities\Page::class, 3)->make(array_merge($byData, ['book_id' => $book->id]));
$chapter->pages()->saveMany($pages);
});
$pages = factory(\BookStack\Page::class, 3)->make($byData);
$pages = factory(\BookStack\Entities\Page::class, 3)->make($byData);
$book->chapters()->saveMany($chapters);
$book->pages()->saveMany($pages);
});
$largeBook = factory(\BookStack\Book::class)->create(array_merge($byData, ['name' => 'Large book' . str_random(10)]));
$pages = factory(\BookStack\Page::class, 200)->make($byData);
$chapters = factory(\BookStack\Chapter::class, 50)->make($byData);
$largeBook = factory(\BookStack\Entities\Book::class)->create(array_merge($byData, ['name' => 'Large book' . str_random(10)]));
$pages = factory(\BookStack\Entities\Page::class, 200)->make($byData);
$chapters = factory(\BookStack\Entities\Chapter::class, 50)->make($byData);
$largeBook->pages()->saveMany($pages);
$largeBook->chapters()->saveMany($chapters);
$shelves = factory(\BookStack\Bookshelf::class, 10)->create($byData);
$shelves = factory(\BookStack\Entities\Bookshelf::class, 10)->create($byData);
$largeBook->shelves()->attach($shelves->pluck('id'));
app(\BookStack\Services\PermissionService::class)->buildJointPermissions();
app(\BookStack\Services\SearchService::class)->indexAllEntities();
app(\BookStack\Auth\Permissions\PermissionService::class)->buildJointPermissions();
app(\BookStack\Entities\SearchService::class)->indexAllEntities();
}
}

View file

@ -12,16 +12,16 @@ class LargeContentSeeder extends Seeder
public function run()
{
// Create an editor user
$editorUser = factory(\BookStack\User::class)->create();
$editorRole = \BookStack\Role::getRole('editor');
$editorUser = factory(\BookStack\Auth\User::class)->create();
$editorRole = \BookStack\Auth\Role::getRole('editor');
$editorUser->attachRole($editorRole);
$largeBook = factory(\BookStack\Book::class)->create(['name' => 'Large book' . str_random(10), 'created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$pages = factory(\BookStack\Page::class, 200)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$chapters = factory(\BookStack\Chapter::class, 50)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$largeBook = factory(\BookStack\Entities\Book::class)->create(['name' => 'Large book' . str_random(10), 'created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$pages = factory(\BookStack\Entities\Page::class, 200)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$chapters = factory(\BookStack\Entities\Chapter::class, 50)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
$largeBook->pages()->saveMany($pages);
$largeBook->chapters()->saveMany($chapters);
app(\BookStack\Services\PermissionService::class)->buildJointPermissions();
app(\BookStack\Services\SearchService::class)->indexAllEntities();
app(\BookStack\Auth\Permissions\PermissionService::class)->buildJointPermissions();
app(\BookStack\Entities\SearchService::class)->indexAllEntities();
}
}