public function pageCreation($chapter) { $page = factory(\BookStack\Page::class)->make(['name' => 'My First Page']); $this->asAdmin()->visit($chapter->getUrl())->click('New Page')->seePageIs($chapter->getUrl() . '/create-page')->type($page->name, '#name')->type($page->html, '#html')->press('Save Page')->seePageIs($chapter->book->getUrl() . '/page/my-first-page')->see($page->name); $page = \BookStack\Page::where('slug', '=', 'my-first-page')->where('chapter_id', '=', $chapter->id)->first(); return $page; }
/** * Get draft pages owned by the current user. * @param int $count * @param int $page */ public function getUserDraftPages($count = 20, $page = 0) { return $this->page->where('draft', '=', true)->where('created_by', '=', user()->id)->orderBy('updated_at', 'desc')->skip($count * $page)->take($count)->get(); }
public function test_page_create_all_permissions() { $book = \BookStack\Book::take(1)->get()->first(); $chapter = \BookStack\Chapter::take(1)->get()->first(); $baseUrl = $book->getUrl() . '/page'; $createUrl = $baseUrl . '/create'; $createUrlChapter = $chapter->getUrl() . '/create-page'; $accessUrls = [$createUrl, $createUrlChapter]; foreach ($accessUrls as $url) { $this->actingAs($this->user)->visit('/')->visit($url)->seePageIs('/'); } $this->checkAccessPermission('page-create-all', [], [$book->getUrl() => 'New Page', $chapter->getUrl() => 'New Page']); $this->giveUserPermissions($this->user, ['page-create-all']); foreach ($accessUrls as $index => $url) { $this->actingAs($this->user)->visit('/')->visit($url); $expectedUrl = \BookStack\Page::where('draft', '=', true)->orderBy('id', 'desc')->first()->getUrl(); $this->seePageIs($expectedUrl); } $this->visit($baseUrl . '/create')->type('test page', 'name')->type('page desc', 'html')->press('Save Page')->seePageIs($baseUrl . '/test-page'); $this->visit($chapter->getUrl() . '/create-page')->type('new test page', 'name')->type('page desc', 'html')->press('Save Page')->seePageIs($baseUrl . '/new-test-page'); }