Input WYSIWYG: Updated UpdateUrlCommand, Added chapter HTML display
This commit is contained in:
parent
bc354e8b12
commit
c07aa056c2
3 changed files with 27 additions and 1 deletions
|
@ -46,6 +46,9 @@ class UpdateUrlCommand extends Command
|
||||||
$columnsToUpdateByTable = [
|
$columnsToUpdateByTable = [
|
||||||
'attachments' => ['path'],
|
'attachments' => ['path'],
|
||||||
'pages' => ['html', 'text', 'markdown'],
|
'pages' => ['html', 'text', 'markdown'],
|
||||||
|
'chapters' => ['description_html'],
|
||||||
|
'books' => ['description_html'],
|
||||||
|
'bookshelves' => ['description_html'],
|
||||||
'images' => ['url'],
|
'images' => ['url'],
|
||||||
'settings' => ['value'],
|
'settings' => ['value'],
|
||||||
'comments' => ['html', 'text'],
|
'comments' => ['html', 'text'],
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
<main class="content-wrap card">
|
<main class="content-wrap card">
|
||||||
<h1 class="break-text">{{ $chapter->name }}</h1>
|
<h1 class="break-text">{{ $chapter->name }}</h1>
|
||||||
<div refs="entity-search@contentView" class="chapter-content">
|
<div refs="entity-search@contentView" class="chapter-content">
|
||||||
<p class="text-muted break-text">{!! nl2br(e($chapter->description)) !!}</p>
|
<p class="text-muted break-text">{!! $chapter->descriptionHtml() !!}</p>
|
||||||
@if(count($pages) > 0)
|
@if(count($pages) > 0)
|
||||||
<div class="entity-list book-contents">
|
<div class="entity-list book-contents">
|
||||||
@foreach($pages as $page)
|
@foreach($pages as $page)
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace Tests\Commands;
|
namespace Tests\Commands;
|
||||||
|
|
||||||
|
use BookStack\Entities\Models\Entity;
|
||||||
use Illuminate\Support\Facades\Artisan;
|
use Illuminate\Support\Facades\Artisan;
|
||||||
use Symfony\Component\Console\Exception\RuntimeException;
|
use Symfony\Component\Console\Exception\RuntimeException;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
@ -24,6 +25,28 @@ class UpdateUrlCommandTest extends TestCase
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function test_command_updates_description_html()
|
||||||
|
{
|
||||||
|
/** @var Entity[] $models */
|
||||||
|
$models = [$this->entities->book(), $this->entities->chapter(), $this->entities->shelf()];
|
||||||
|
|
||||||
|
foreach ($models as $model) {
|
||||||
|
$model->description_html = '<a href="https://example.com/donkeys"></a>';
|
||||||
|
$model->save();
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->artisan('bookstack:update-url https://example.com https://cats.example.com')
|
||||||
|
->expectsQuestion("This will search for \"https://example.com\" in your database and replace it with \"https://cats.example.com\".\nAre you sure you want to proceed?", 'y')
|
||||||
|
->expectsQuestion('This operation could cause issues if used incorrectly. Have you made a backup of your existing database?', 'y');
|
||||||
|
|
||||||
|
foreach ($models as $model) {
|
||||||
|
$this->assertDatabaseHas($model->getTable(), [
|
||||||
|
'id' => $model->id,
|
||||||
|
'description_html' => '<a href="https://cats.example.com/donkeys"></a>',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function test_command_requires_valid_url()
|
public function test_command_requires_valid_url()
|
||||||
{
|
{
|
||||||
$badUrlMessage = 'The given urls are expected to be full urls starting with http:// or https://';
|
$badUrlMessage = 'The given urls are expected to be full urls starting with http:// or https://';
|
||||||
|
|
Loading…
Reference in a new issue