Skip to content

Commit b47f286

Browse files
committed
FIX Bootstrap style for clear all button, and add paginator for LogViewerAdmin
1 parent e8c0870 commit b47f286

File tree

4 files changed

+22
-3
lines changed

4 files changed

+22
-3
lines changed

src/Admin/LogViewerAdmin.php

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use SilverLeague\LogViewer\Forms\GridField\GridFieldClearAllButton;
77
use SilverStripe\Admin\ModelAdmin;
88
use SilverStripe\Forms\GridField\GridFieldAddNewButton;
9+
use SilverStripe\Forms\GridField\GridFieldPaginator;
910
use SilverStripe\View\Requirements;
1011

1112
/**
@@ -65,6 +66,7 @@ public function getEditForm($id = null, $fields = null)
6566
$config = $gridField->getConfig();
6667
$config->removeComponentsByType($config->getComponentByType(GridFieldAddNewButton::class));
6768
$config->addComponent(new GridFieldClearAllButton('buttons-before-left'));
69+
$config->addComponent(new GridFieldPaginator);
6870

6971
return $form;
7072
}

src/Forms/GridField/GridFieldClearAllButton.php

+4-2
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,12 @@ public function getHTMLFragments($gridField)
4141
{
4242
$button = GridField_FormAction::create($gridField, 'clear', 'Clear all', 'clear', null);
4343
$button->setAttribute('data-icon', 'clear-all-logs');
44-
$button->addExtraClass('font-icon-trash-bin action_clear action action-delete');
44+
$button->addExtraClass('font-icon-trash-bin action_clear action action-delete btn btn-secondary');
4545
$button->setForm($gridField->getForm());
4646

47-
return [$this->targetFragment => '<p class="grid-clear-all-button">' . $button->Field() . '</p>'];
47+
return [
48+
$this->targetFragment => '<p class="grid-clear-all-button grid-print-button">' . $button->Field() . '</p>'
49+
];
4850
}
4951

5052
/**

tests/Admin/LogViewerAdminTest.php

+12
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use SilverLeague\LogViewer\Forms\GridField\GridFieldClearAllButton;
77
use SilverStripe\Dev\FunctionalTest;
88
use SilverStripe\Forms\GridField\GridFieldAddNewButton;
9+
use SilverStripe\Forms\GridField\GridFieldPaginator;
910
use SilverStripe\Forms\ReadonlyField;
1011

1112
/**
@@ -66,6 +67,17 @@ public function testHasClearAllButton()
6667
);
6768
}
6869

70+
/**
71+
* Test that the GridField has a Paginator component
72+
*/
73+
public function testHasPagination()
74+
{
75+
$this->assertInstanceOf(
76+
GridFieldPaginator::class,
77+
$this->getConfig()->getComponentByType(GridFieldPaginator::class)
78+
);
79+
}
80+
6981
/**
7082
* Test that the entry and level fields are displayed in the GridField, and can be exported
7183
*/

tests/Forms/GridField/GridFieldClearAllButtonTest.php

+4-1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ class GridFieldClearAllButtonTest extends SapphireTest
2626
*/
2727
protected $usesDatabase = true;
2828

29+
/**
30+
* @var GridField
31+
*/
2932
protected $gridField;
3033

3134
/**
@@ -66,7 +69,7 @@ public function testGetHtmlFragments()
6669
$this->assertContains('Clear all', $fragments['before']);
6770
$this->assertContains('clear-all-logs', $fragments['before']);
6871
$this->assertContains('font-icon-trash-bin action_clear', $fragments['before']);
69-
$this->assertContains('<p class="grid-clear-all-button">', $fragments['before']);
72+
$this->assertContains('<p class="grid-clear-all-button grid-print-button">', $fragments['before']);
7073
}
7174

7275
/**

0 commit comments

Comments
 (0)